Method for deskewing bits in a communication system using wavelength division multiplexing

Abstract: The invention relates to a method and a system for deskewing data transmitted via a dispersive medium such as a fiber optic link, wherein the relative delays in arrival time for a plurality of bits, propagated in separate channels are measured. The relative delays are used to calculate the wavelength (λ) of one channel and the zero dispersion wavelength (λ₀) of the medium. The relative delays in arrival tides for the remaining bits in a group of bits are predicted using the measured relative delays, the spacing (δ) between the transmitters and the calculated wavelengths. An adjustable delay for storing data bits is provided in each channel. The relative delays are used to deskew the individual bits.

Description: The present invention relates generally to the communication systems using wavelength division multiplexing and more particularly to a method and an apparatus for deskewing wavelength division multiplexed data which is transmitted through a dispersive medium. The proliferation of computers and other data handling devices has created a need for more effective and efficient communications systems for interconnecting the computers and/or other data handling devices The wavelength division multiplexing (WDM) system has been used to interconnect computers and other data handling devices. The WDM communications systems are attractive in that they can provide parallel data transmission on a single transmission link such as a single wire and/or single optical fiber. In a conventional optical WDM communications system, the individual bits of a group of bits, e.g., a byte, are applied to different encoders in a set of optical encoders. The encoders modulate each bit or channel at a different optical frequency or wavelength. The modulated optical signals are merged into a single beam which is transmitted through a single fiber to a receiving location. At the receiving location, the single beam is separated into its bit signal components to re-establish the originally transmitted byte of data. Optical filters and/or gratings are used to separate the beam into its component parts. One known problem in using WDM in an optical fiber system is that the respective bits of a byte of data arrive at different times at the receiver. This phenomenon is referred to as bit skew. A probable reason for bit skew is that an optical fiber is a dispersive medium which tends to delay optical signals at different rates. Thus, optical signals at some frequencies are delayed more than optical signals at other frequencies. Since a byte of WDM data contains signals with different frequencies or wavelengths, the effect of dispersion is to delay some bits in the byte more than others. For relatively low transmission rate and/or relatively short length of transmission link, the amount of bit skew may fall within acceptable limits. However, for relatively high transmission rate and/or long transmission links, the bit skew may become so large that bits in one byte may at least partially overlap with bits in another byte. Even for relatively long transmission links, if the exact length of the transmission link is known, the retardation or delay of a bit transmitted at a particular wavelength can be readily calculated. However, the exact length of transmission links in practical commercial communications systems is influenced by several conditions and as such is not normally known. For example, the exact length of a transmission link depends on the manner in which it is installed and will vary from one installation to the next, depending on the installer's technique. Even if the exact length is known initially, it can change due to changes in temperature or it may change if connectors and/or sections of the fiber must be replaced after installation. Furthermore, it is believed that the bit skew problem is aggravated by drifts in the wavelengths of the lasers which generate the light beams and/or shifts in the group delay curves. The prior art has proposed several techniques for solving the bit skew problem. Among the proposed techniques, perhaps the best technique is the one set forth in U. S. patent 4,677,618. In the subject patent, the time delays between two different wavelength (sub-channels) are measured. The measured time delays and known information about the fiber are used in an algorithm which predicts the arrival times of bits in the other sub-channels. The prediction scheme requires that the central wavelengths of the transmitting lasers and the fiber group delay curve must be stable. Any unexpected drift of the laser wavelengths or a shift of the fiber group delay may cause the predicted arrival times to be incorrect. As a result, the sampling time would not be at the bit center and the probability of errors would increase. It is a more specific object to provide a communications method and system in which bit skew caused by drifts in the laser wavelengths and/or shifts in the group delay curve and/or changes in the fiber lengths are corrected without any prior knowledge of the fiber characteristics. The above and other objects are achieved by measuring the relative delays between a plurality of bits in parallel channels at a receiving location. The wavelengths (λ) for at least one of the channels and the zero dispersion wavelength of the fiber (λ₀) are determined from these measurements. These wavelengths, relative delays and the wavelength spacing (δ) between the light emitting devices which transmit the bits are used to predict the relative delays for the other bits in the group. The relative delays are used to control adjustable delay devices located in each channel so that the bits for the transmitted group or byte are properly (linearly) aligned in time. In particular, the invention includes a method and a sys tem for bits alignment when received from a transmission system sending bits in parallel bits channels using frequency division multiplexing through a dispersive medium or when more particularly the transmission system is an optical based on parallel optical channels. The method for aligning bits assumes that the wavelength spacing between parallel bit channels or optical signals is known, and that the relative delays in derived bit clocks or arrival times between selected ones of bit channels have been determined. Then the method is characterized by the following steps: A. Measuring the time delays between the bits clocks in the first four sub-channels, Δ t 1,2 , Δ t 1,3 and Δ t 1,4 . B. Calculating λ1 from the quadratic equation below λ 1 = - b ± b 2 - 4 ac 2 a where a = 2(3Δ t 1,3 -Δ t 1,4 -3Δ t 1,2 ) b = 4δ(-4Δ t 1,3 +Δ t 1,4 + 5Δ t 1,2 ) c = δ²(39Δ t 1,3 -7Δ t 1,4 -57Δ t 1,2 ) The positive square root corresponds to wavelengths greater than λ₀, and the negative square root corresponds to wavelengths smaller than λ₀. δ is the wavelength spacing between the sub-channels. C. Calculating λ₀ from the equation below. D. Calculating the delay times for the other bits from the equation below using the measured Δ t 1,2 , the channel number, m, and the channel spacing, δ. E. Setting the adjustable delay in each channel an amount equal to its corresponding measured or calculated delay. The foregoing features and advantages of the invention will be more fully described in the accompanying drawings wherein : Figure 1 is a functional block diagram of a system within which the present invention is practiced. Figure 2 is a detailed diagram of the wavelength division multiplexing and demultiplexing sections of the system shown in Figure 1. Figure 3 is a block diagram of an apparatus used to implement the invention. Figure 4 is a graphic representation showing the effects of frequency-related dispersion in a dispersive medium. Figure 5 is a flow chart of the algorithm which generates the respective channel delays. Figure 6 is a block diagram of a circuit arrangement for the adjustable delay means. Figure 1 shows a functional block diagram of a system embodying the teachings of the present invention. The system includes a source system 10 which can be any kind of digital processing system or device capable of providing digital data which is transmitted on parallel bus 12 to a wavelength division multiplexing circuit 14. For example, bus 12 is 8-bit-wide (eight data channels). However, busses of any widths can be used. The only limitation is that a wavelength division multiplexing circuit must be capable of handling or processing all data channels in the selected bus. The function of the wavelength division multiplexing circuit 14 is to encode each bit optically, combine them into an optical bit stream with a single multi-wavelength signal which is transmitted through medium 16 (such as an optical fiber) with frequency-related dispersion characteristics. The signal is received by the wavelength division demultiplexing circuit 18 which separates the multi-wavelength signal into parallel signals onto bus 20. Each of the signals on bus 20 has different wavelengths. The bit signals on bus 20 are transmitted to bit skew correction system 22. As will be described in detail hereinafter, the function of the bit skew correction system 22 is to deskew (that is, align) the bits from bus 20 into a parallel data stream which are transmitted over bus 23 to utilization system 25. Figure 2 shows details of the wavelength division multiplexing circuit 14 and wavelength division demultiplexing circuit 18. The bit stream in each channel of parallel bus 12 is used to modulate optical devices 24A through 24H. Each of the optical devices generates an optical signal at a predetermined optical frequency or wavelength. The optical signals are transmitted by optical fibers 36A through 36H to optical combiner 26. The optical combiner 26 combines or merges the individual optical signals to form a composite (multi-wavelength) signal which is transmitted through optical fiber 16 to an optical grating 28 at a receiving system 27. The optical grating 28 separates the received signal into its components and sends each of the components to separate optical detectors 30A through 30H. The electrical bit signals produced by the optical detectors 30A through 30H are aligned via the system to be described hereinafter and transmitted to the utilization system 25. Still referring to Figure 2, the optical devices 24A through 24H are conventional devices which can be obtained from several different manufacturers. The details of these devices will not be discussed any further. Suffice it to say that optical devices such as those described in USP 4,677,618 can be used in the embodiment of the present invention. In addition, the wavelength division multiplexer and the wavelength division demultiplexer are conventional devices such as those described in the referenced patent. It should also be noted that the functions performed by the optical combiner or multiplexer 26 and the optical grating or demodulator 28 can be performed using the same component with appropriate changes in beam direction. Figure 4 shows the arrival of three bytes of data at the receiver 27 for a system operating at its maximum link length for a particular bit error rate. The system would be designed to operate at the maximum length by choosing the minimum time between bytes to be limited by the dispersion in subchannel N since that subchannel has the most dispersion and, thus, the greatest intersymbol interference. This figure is also helpful in identifying the problem which the present invention solves. The problem is bit-skew caused by the variation of optical group velocity versus wavelength. As a result, even though the bits of a byte or any other grouping are transmitted simultaneously from a source system the constituent bits are skewed or shifted relative to one another. Still referring to Figure 4, the sub-channels at the receiver are plotted on the vertical coordinate while the relative delay are plotted on the horizontal axis of the graph. The symbol (δ) represents the spacing between the optical signal generating devices 24A and 24B at the transmitter section of system. For purposes of the present invention, this spacing is assumed to be constant. Finally, Δ t represents the relative delay between bits in a particular byte. Thus, Δt 1,2 represents the delay between bits 1 and 2 of a byte. Similarly, Δt 1,3 represents the relative delay between bits 1 and 3 and so forth. As will be described subsequently, the relative delay between respective bits of a byte, the spacing δ between channels and other relevant characteristics of the group delay curve for each byte are used in correcting the skew associated with a particular byte of transmitted data. As can be seen in Figure 4, the bits for a particular byte such as byte A or byte B or byte C are arranged on a curve relative to each other. Even though the individual bits can be easily detected, it is very difficult to tell which bit goes with which byte. Ideally, each byte should be parallel with the vertical axis of the graph. If this were the case, then it would be simple to tell (that is, recover) the entire byte at the receiver. However, in the practical system, the bits of a particular byte are skewed relative to one another and the present invention makes the correction in the received data so that all the bits of a particular byte or group are aligned in a straight line. Still referring to Figure 4, the curves labeled Byte A, B and C may be characterized as group delay curves for (WDM) encoded bytes of data. If this characterization is adopted λ (representing the wavelengths of transmitted signals) is plotted on the vertical axis of the graph while time (t) is plotted on the horizontal axis. A mathematical expression called fiber group delay equation can be written for the curve. The equation is then solved to generate other equations which are used in the below process (steps A through E) to align the bits in a particular byte. The process steps are: A. Measuring the time delays between the bits clocks in the first four sub-channels, Δt 1,2 , Δt 1,3 and Δt 1,4 . B. Calculating λ₁ from the quadratic equation below λ 1 = -b± b 2 -4ac 2a where a = 2(3Δt 1,3 - Δt 1,4 - 3Δt 1,2 ) b = 4δ (-4Δt 1,3 + Δt 1,4 + 5Δt 1,2 ) c = δ²(39Δt 1,3 - 7Δt 1,4 - 57Δt 1,2 ) The positive square root corresponds to wavelengths greater than λ₀, and the negative square root corresponds to wavelengths smaller than λ₀. δ is the wavelength spacing between the sub-channels. C. Calculating λ₀ from below. D. Calculating the delay times for the other bits from the equation below using the measured Δt 1,2 , the channel number, m, and the channel spacing, δ. E. Setting the adjustable delay in each channel an amount equal to its corresponding measured or calculated delay. The process is based on the group delay, τ, found by integrating the dispersion equation given by Jeunhomme "Single Mode Fiber Optics, Principles and Applications", New York, Marcel Decker, 1983, p. 113. The group delay,τ,is τ=τ 0 +S 0 λ 0 λ-S 0 λ 2 0 ln λ where τ₀ is a constant, λ₀ is the zero-dispersion wavelength and S₀ is the value of the dispersion slope at λ₀ The delay between sub-channels 1 and m is: Δτ 1, m =τ λ m -τ λ 1 = S 0 λ 0 λ m - S 0 λ 0 2 ln λ m - S 0 λ 0 λ 1 -S 0 λ 0 2 ln λ 1 = S 0 λ 0 λ m - λ 1 -S 0 λ 0 2 ln λ m -ln λ 1 =. S 0 λ 0 λ m - λ 1 -S 0 λ 0 2 ln λ m λ 1 = S 0 λ 0 m- 1 δ -S 0 λ 0 2 ln λ 1 + m- 1 δ λ 1 where δ is the wavelength spacing between the sub-channels. Since Δ t = LΔτ, This removes the unknown, L, from the equations. Divide numerator and denominator by S₀λ₀. Since there are still two unknowns, λ₀ and λ₁, we need two equations in order to solve for λ₁. Let P = Δt 1,3 / Δt 1,2 and let Q = Δt 1,3 / Δt 1,2 Solve both equations for λ₀. Combine these two equations: Cross multiply. Combine similar logarithmic terms: The series expansion for 1n(1+z) is ln 1+ z =z- 1 2 z 2 + 1 3 z 3 -... if |z| ≤ 1 and z ≠ = -1. These conditions will be true for all of our choices of λ₁ and δ. Using a 4-term expansion: Multiply by 12λ 1 4 δ (3 P - 2 Q )(12λ 1 3 - 6δλ 1 2 + 4δ 2 λ 1 - 3δ 3 ) + ( Q - 3)(24δλ 1 3 - 24λ 1 2 + 32δ 2 λ 1 - 48δ 3 ) - ( P - 2)(36λ 1 3 - 54δλ 1 2 + 108δ 2 λ 1 - 243δ 3 ) = 0 Group terms by decreasing order of λ₁. λ 1 3 (36 P - 24 Q + 24 Q - 72 - 36 P + 72) + λ 1 2 δ( -18 P + 12 Q - 24 Q + 72 + 54 P - 108) + λ 1 δ 2 (12 P - 8 Q +32 Q - 96 - 108 P + 216) + δ 3 ( -9 P + 6 Q - 48 Q + 144 + 243 P - 486) = 0 Since the coefficient of λ 3 / 1 is zero, (14) reduces to a quadratic equation in λ₁. Dividing by δ, λ 1 2 (36 P - 12 Q - 36) + λ 1 δ( -96 P + 24 Q + 120) + δ 2 (234 P - 42 Q - 342) = 0 Divide each term by 6: 2(3 P - Q - 3)λ 1 2 + 4δ( -4 P + Q + 5)λ 1 + δ 2 (39 P - 7 Q - 57) = 0 Replace P with Δt 1,3 / Δt 1,2 and Q with Δt 1,3 / Δt 1,2 2(3Δ t 1,3 - Δ t 1,4 - 3Δ t 1,2 )λ 1 2 + 4δ( -4Δ t 1,3 + Δ t 1,4 + 5Δ t 1,2 )λ 1 + δ 2 (39Δ t 1,3 - 7Δ t 1,4 - 57Δ t 1,2 ) = 0 Figures 3A and 3B show a block diagram of the bit skew correction system 22 (Fig. 1). The individual bit signals in each of the bit channels of bus 20 (Fig. 1) are applied to channel receiver and clock recovery circuit means 66A through 66N. Such circuits are well known in the art and will not be described in detail. Suffice it to say that the channel receiver and clock recovery circuit set forth in the above referenced patent may be used in the present invention. Each of the channel recovery and clock recovery circuit means derives a bit or channel clock signals which are supplied to comparators 61, 63 and 65 via conductors labeled CLOCK 1, CLOCK 2, CLOCK 3 and CLOCK 4. In addition, each of the channel receiver and clock recovery circuits derives bit signals which are delivered to adjustable delay means 72A through 72D. The function of the adjustable delay means 72A through N is to delay the fastest bits in a transmitted byte to provide linear alignment between the bits. The output from the adjustable delay means are fed into the output register 74 from which the aligned data for each byte is delivered to utilization device 5 (Fig. 1). Still referring to Figures 3A and 3B, the comparators 61, 63 and 65 compare the phase of the clock signals on channels 2, 3 and 4 with the phase of the clock signal on channel 1. With reference to Figure 2, device 30A represents channel 1, device 30B represents channel 2 and so forth. Referring again to Figure 3A, the output signal Δt 1,2 represents the delay between clock 1 and 2. Similarly, the delay signal Δt 1,3 is the delay between clock 1 and 3. Finally, Δt 1,4 is the delay between clock 1 and clock 4. The respective delays are fed into channel delay control means 67 which generates the byte clock signal on conductor 78, delay control signals 70A, 70B, 70C through 70N and a signal called clock for the delay lines. The clock signal is used to gate the adjustable delay means while the delay control signals set the adjustable delay means at a position that reflects the value of the calculated and measured delay. The channel delay control means 67 may be formed from hardware circuits generated from the flow chart set forth in Figure 5 or the controller may be a computer programmed in accordance with the process steps set forth in said flow chart. In the preferred embodiment of the invention, a microcomputer program according to the flow chart is preferred. With reference to the flow chart, a value for the spacing δ between the laser element 24A through 24H is set 80. A value can be obtained from the manufacturers of the laser devices. The respective delays between selected clock signals are determined (82, 84, 86). In block 88 λ₁ is calculated in accordance with equation B. Similarly, λ₀ (block 90) is calculated in accordance with equation C. The relative delay Δt 1,m for the next channel is calculated (92). In block 94, the calculated delays are used for setting the adjustable channel delay means 72A, 72B, 72C and 72D. From block 94, the program descends into block 96 where it tests to see if the delay for the last channel is calculated. If it is the last channel, the program descends into block 98 where it exits the program. If additional channels remain to be calculated, the program branches back to block 92 to repeat the calculation for that channel. Figure 6 shows a block diagram of a circuit arrangement for the adjustable delay means. The adjustable delay means includes a selector circuit 102, shift register 100, a common clock line, a select line, a data line and an output line. With reference to Figure 3B, the output line is connected to register 74. The common clock line is connected to the line labeled Clock for the Delay lines. The data line is connected to the channel receiver and clock recovery circuit means and the select line is connected to one of the delay controls 70A-70D. When the maximum delay expected in a link is less than one bit time, the variable delay is simply a one bit register which is gated on to sample the receiver output at Δt 1,m after the channel one is gated into its register. When more than a bit time delay is expected, the design must include storage such as a shift register 100. The algorithm must be expanded to make use of the fact that Δt 1,j will be smaller than Δt 1,k if and only if the delay of the k th bit clock beyond the j th bit clock is more than one bit time. Using this fact, each pair of bit clock delays can be examined, and one bit delay added to all those after the first inversion (smaller rather than larger) of successive bit clock delays. This procedure makes use of the fact that the group delay curve is monotonic on one side of the zero dispersion wavelength. For many links, such complications are not required. But if they are, the variable delay can be realized in several ways. The easiest to visualize is a shift register b x r sections long. Where b is the maximum number of complete bit times of delay expected in the longest link, and is the desired sub-bit time delay resolution. The variable delay also contains a selector circuit 102 such that one particular section of the shift register is coupled to the output, and thus to the output register (Figure 3B). The delay algorithm output to each individual adjustable delay means or variable delay means sets the selector so that the section of the shift register connected to the output register (Fig. 3B) corresponds to a delay of Δt 1,n - Δt 1,m for channel m where Δt 1,n is the calculated delay on the channel farthest from λ₀ . Thus, the longest delay is for channel 1 which is closest to λ₀ and the shortest delay is for channel n which is farthest from λ₀. Therefore, the variable delay added to the delay of information in a channel yields a total delay which is equal for all channels. The algorithm was presented such that the delays Δt 1,m were calculated since this simplifies the mathematics. If the variable delay illustrated here were used, the algorithm should convert these delays to Δ t n,m = Δ t 1, n - Δ t 1, m for simplicity in setting the selector section of the delay. If other types of variable delay are used, this may not be necessary. In the variable delay being described, the clock to the shift registers is r times faster than the channel bit clocks. Each register samples its channel receiver output and holds a pattern corresponding to the channel receiver output bits sampled every time periods for b bits. By connecting the proper sample time (register section) to the output register, the appropriate data bit is selected. It should be noted that other types of delay can be used without departing from the teachings of the present invention.

Claims: A method for aligning the bits in a group of bits transmitted from a source system in parallel bit channels using frequency division multiplexing through a dispersive medium, said method comprising first steps of (a) obtaining a value δ for a wavelength spacing between the parallel bit channels at said source system, (b) determining a set of relative delay values representative of differences in derived bit clocks between selected ones of said bit channels in the group, said method characterized in that it further comprises the following steps: (c) determining a value λ₁ for a wavelength of a first selected one of the bit channels, (d) determining a value λ₀ for the wavelength of zero dispersion of the medium, (e) using values from steps (a), (c) and (d), calculating a second set of relative delay values for difference in arrival times between remaining bit channels in said group, and (f) delaying each one of said parallel channels for a time period corresponding to the delay calculated for each channel. The method of claim 1 where the bits are converted into a plurality of parallel optical signals, transmitted through a plurality of optical channels to an optical multiplexer which combines the optical signals into a single multi-frequency optical signal which is transmitted through said dispersive medium to a receiving system that separates the single multi-frequency signal into a plurality of parallel single frequency optical signals which are converted into electrical signals and deliver to a utilization device, said method characterized in that it modifies the method of claim 1 as follows: (a) obtaining a value δ for a wavelength spacing between the the optical signals, (b) determining a set of relative delay values representative of differences in derived arrival times between selected ones of said optical signals, (c) determining a value λ₁ for a wavelength of a first selected one of the optical signals, (e) using values from steps (a), (c) and step (d) of Claim 1, calculating a second set of relative delay values for difference in arrival times between remaining optical signals in said group, and (f) delaying each one of said optical signals for a time period corresponding to the delay calculated for each signal. The method according to Claim 2, wherein the first set of relative delay values are generated by recovering a plurality of clock signals from a plurality of the optical signals; (i) selecting one of said clock signals as a reference clock; and (ii) comparing the reference clock with other ones of said clock signals. The method of Claim 3 wherein the group includes m data bits, with bits one through four selected to provide the plurality of clock signals and a clock signal recovered from bit one being the reference clock. The method of Claim 1 or 4 wherein the first value for the wavelength of the first selected one of the bit channel or signal being λ 1 = -b ± b 2 - 4 ac 2 a where λ₁ represents the wavelength of bit one; a = 2(3Δ t 1,3 - Δ t 1,4 - 3Δ t 1,2 ) b = 4δ( -4Δ t 1,3 + Δ t 1,4 + 5Δ t 1,2 ) c = δ²(39Δ t 1,3 - 7Δ t 1,4 - 57Δ t 1,2 ) where Δ t 1,2 represents relative delay between bits one and two, Δ t 1,3 represents relative delay between bits one and three, Δ t 1,4 represents relative delay between bits one and four δ represents the spacing between the wavelengths. The method of Claim 1 or 5 wherein the zero dispersion wavelength of the medium is calculated from: The method of Claim 1 or 6 wherein the time delays for selected signals are calculated from: where λ₀ represents the dispersion wavelength of the medium. A system for aligning the bits in a byte of data transmitted from a source system (10) in parallel bit channels using frequency division multiplexing through a dispersive medium (16), said system being characterized in that it comprises : means (66) positioned at a bits aligning location, for detecting the arrival of bits in each of the parallel bit channels, means (61, 63, 65) positioned at the bits aligning location, for determining a set of relative delays between derived bit clocks in selected ones of the bit channel, means (in 67) for detecting a wavelength for detected bits in at least a selected one of the bit channel, means (in 67) for determining the dispersive zero dispersion wavelength for a medium interconnecting the source system to a sink system, and means (in 67) for calculating a second set of relative delay values using the set of relative delays, the wavelength spacing between the parallel channels and the dispersive zero dispersion, for difference in arrival times between remaining bit channels in said group, and delay means (72) coupled to each of the channels for delaying bits an amount of time corresponding to the delay for that channel.

Inventors: LOEB MITCHELL LEVY, STILWELL GEORGE RAYMON JR, LOEB, MITCHELL LEVY, STILWELL, GEORGE RAYMON, JR.
Applicants: IBM, INTERNATIONAL BUSINESS MACHINES CORPORATION
Application year: 1990
Main classification: H04J14
IPC codes: H04J14, H04B10, H04J1