Abstract:
The data communication system includes an encoder to receive nonreturn-to-zero data signals and convert them to biphase signals, a current mode transmitter for transmitting the biphase signals, and a communication link connected to the transmitter. The encoder senses transitions in the nonreturn-to-zero data signals and controls the amplitude of the biphase signals in response to the sensed transitions. These transitions are sensed by inverting and delaying the nonreturn-to-zero data signals and exclusively ORing these delayed and inverted signals with the nonreturn-to-zero data signals.

Description:
BACKGROUND OF THE INVENTION 
     The present invention relates to digital data communication systems and more particularly to such systems in which pulse coded data is transmitted over a two-wire or four-wire communication link. 
     It is known that communication links have band limited frequency response characteristics which affect the shape of transmitted pulses. The characteristics of the communication link can adversely affect various characteristics of the transmitted pulse and result in a DC bias being present on the transmission link. This DC bias is detrimental for many reasons and should be avoided. 
     In order to provide a balanced transmitted waveform, i.e., one which does not contain a variable DC component, it is known to use a biphase transmission code. This type of code contains pulses having a transition for each bit period so that the transmitted signal is balanced. However, even using such a balanced code, a net DC shift results in the communication link due to pulse distortion produced when the signal to be transmitted shifts from one symbol to another. 
     In addition, it has been found that the first pulse in any series of pulses transmitted across a band limited communication link results in a net DC shift which adversely affects the following pulses. This problem becomes more severe in local networks where the communication link is not used continuously. That is, where the standard operation consists of streams of pulses separated in time, the first pulse of each stream can produce a net DC bias which adversely affects detection of that stream. 
     Various communication systems have been proposed to reduce the effects of signal distortion caused by the transmission medium. For example, U.S. Pat. No. 4,041,239 to Haass discloses a method and apparatus to reduce the effects of signal distortions in data signals encoded into a combination of wide rectangular pulses and narrow rectangular pulses. A discriminator signal is produced upon the appearance of a wide rectangular pulse and a predistorted signal is produced by multiplying the encoded data signal with the discriminator signal. 
     U.S. Pat. No. 4,170,715 to Mizokawa discloses a communication system in which nonreturn-to-zero data signals are converted to pulse coded transmission data signals. The nonreturn-to-zero data signals are delayed by a prescribed time delay and an amplitude level changing circuit changes the amplitude level of the digital pulse coded transmission data signals in accordance with the pulse duration of the digital pulse coded transmission data signals on the basis of the delayed nonreturn-to-zero data signals. 
     Another problem which occurs in local networks is that several communication terminals can be connected or disconnected from a single two-wire communication link. Ideally, the communication link should be impendence matched to the terminals to provide a most efficient energy transfer. However, this requires that each time an additional terminal is connected to the same communication link, the impedences of each of the terminals be adjusted accordingly. 
     SUMMARY OF THE INVENTION 
     One object of the present invention is to provide a data communication system for transmitting digitally encoded data wherein the transmitted waveform is balanced; i.e. does not contain a variable DC component. 
     Another object of the present invention is to provide a data communication system where the transitted waveform contains a significant component of the bit rate to allow timing recovery from the received data waveform. 
     A further object of the present invention is to provide a data communication system in which the use of analog circuits is minimized. 
     Yet another object of the present invention is to provide a data communication system which provides superior transmission characteristics with a minimum number of components. 
     In accordance with the above and other objects, the present invention is a data communication system for transmitting digitally encoded data, comprising an encoder connected to receive nonreturn-to-zero data signals and converting the nonreturn-to-zero data signals to biphase signal pulses. A current mode transmitter receives the biphase signal pulses and transmits them across a two-wire communication link. A receiver is connected to the two-wire communication link for converting the biphase signal pulses into nonreturn-to-zero data signals. The encoder includes a circuit for sensing transitions in the nonreturn-to-zero data signals and emitting a control signal to the receiver for controlling the amplitude of transmitted pulses based on these transitions. 
     The encoder also includes a circuit for sensing the first pulse in a pulse stream and controlling the amplitude of the first pulse as it is transmitted to be less than the greatest amplitude of the remaining pulses in the pulse stream. 
     In accordance with other aspects of the present invention the transmitter comprises two current drivers which are separately controlled. One of the current drivers is controlled by the biphase signal pulses and the other current driver is controlled by the transition sensing circuit. 
     In accordance with further aspects of the invention, the transition sensing circuit comprises circuitry for inverting and delaying the nonreturn-to-zero data signals, and an exclusive OR gate for receiving the non-return to data signals and the inverted and delayed non-return to data signals. The exclusive OR gate outputs a signal which is used for controlling the amplitude of the pulses transmitted by the transmitter. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     The above and other objects of the present invention will become more readily apparent as the invention is more completely understood from the detailed description to follow, reference being had to the accompanying drawings in which like reference numerals represent like parts throughout, and in which: 
     FIG. 1 represents a communication network incorporating the present invention; 
     FIG. 2 is a block diagram showing a transceiver according to the present invention; 
     FIG. 3 is a timing chart depicting the manner in which DC shift is produced in a conventional communication system; 
     FIG. 4 is a circuit diagram showing an encoder and transmitter according to the present invention; and 
     FIG. 5 is a timing diagram for the encoder and transmitter of FIG. 4. 
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS 
     FIG. 1 shows a plurality of transceivers 10 which are connected to a two-wire communication link 12 on one hand and to a user system 14 on the other hand. User systems 14 can comprise, for example, a centralized host computer such as a microcomputer or a minicomputer, computer terminals, word processing stations, etc., which must communicate with one another. Periodically, when one user system 14 wishes to communicate with another user system 14, information is passed back and forth through transceiver 10 and two-wire communication link 12. As shown in FIGS. 1 and 2, each transceiver 10 receives a clock input on line 16 from the associated user system. Also, a transmit request line 18 passes a signal from the associated user system to indicate that information is about to be transmitted. Finally, a data input line 20 is connected to each transceiver 10 from the associated user system 14 to receive nonreturn-to-zero data to be transitted to another user system 14. 
     Each transceiver 10 passes a signal to the associated user system 14 on a line 22 to indicate whether the two-wire communication link 12 is idle or busy. Recovered data is passed to the associated user system on line 24, and a recovered timing signal is passed on line 26 to synchronize the receiving user system 14 with the transmitting user system 14. 
     FIG. 3 shows a timing diagram for a typical prior art communication system. Waveform a represents a nonreturn-to-zero data signal to be transmitted. In order to balance each transmitted bit, binary signal a is converted to a biphase or Manchester code shown as signal b. Biphase signal b includes a transition for each bit period. A rising midcell pulse represents a logical 0 and a falling midcell pulse represents a 1. The midcell transitions allow a single wire pair to carry both timing and data signals. 
     Signal c shows a transmitted biphase signal, and signal d shows the recovered biphase pulses which are obtained from transmitted signal c by detecting zero crossings of signal c. It should be noted that signal c is a bipolar signal so that a 1 level of signal b corresponds to a positive peak of signal c and a zero level of signal b corresponds to a negative peak of signal c. Also, it will be noted that signal b consists of wide pulses and narrow pulses, the narrow pulses having a width one-half that of the wide pulses. The wide pulses occur whenever there is a transition in the state of nonreturn-to-zero signal a. 
     There are two problems which occur in transmitting signal c. First, it will be noted that the first pulse c 1  of signal c corresponds to a narrow pulse b 1  of signal b. However, the recovered first pulse d 1  of signal d is wider than desired. This apparently due to the fact that pulse c 1  adds a positive DC bias to signal c. This DC bias affects the following pulses c 2  through c 9  such that the positive pulses c 3 , c 5 , c 7  and c 9  result in recovered pulses d 3 , d 5 , d 7  and d 9  which are wider than desired and negative pulses c 2 , c 4 , c 6  and c 8  result in zero level pulses d 2 , d 4 , d 6  and d 8  which are narrower than desired. The double wide negative pulse c 10  then adds a negative DC bias to signal c such that positive pulse c 11  is smaller than desired and correspondingly, recovered pulse d 11  is narrower than desired. The next negative pulse c 12  is then wider than desired. Pulse c 12  is followed by a positive pulse c 13  which is followed by a negative pulse c 14 . As can be appreciated, the double wide pulses c 13  and c 14  are not as affected by the frequency limitations of the transmission link as the narrower pulses. They do, however, affect any following narrower pulses in that they add a DC bias to the following narrower pulses as shown by pulses c 15 , c 16  and c 17 . 
     Returning again to FIG. 2, it will be seen that transceiver 10 includes a modulator 27 having an encoder 28 and a current mode transmitter 29, and a demodulator 30 having a zero crossing detector 31 feeding a timing recovery circuit 32, a data recovery circuit 33, and a digital discriminator 34 and carrier detector 35. 
     Encoder 28 receives the clock signal on line 16, transmit request signal on line 18, and the data on line 20, and outputs biphase signals and amplitude control signals to current mode transmitter 29. Encoder 28 rectifies the problems discussed above with respect to signal c in FIG. 3 by transmitting the first pulse at an amplitude which is one-half of that of any succeeding narrower pulses and by transmitting any wider pulses resulting from a transition in the binary code level at half the amplitude of the narrow pulses also, as will be discussed hereinafter. 
     Current mode transmitter 29 passes signals through line 40 to a transformer 41 which is connected to two-wire communication link 12. A current mode transmitter is used here to minimize the possibilities of reflections on the communication link 12 and to eliminate the need to physically switch the cable driver during transmit/receive. Accordingly, the zero crossing detector 31 is connected to the same line 40 as current mode transmitter 29. Zero crossing detector 31 receives the signals from line 40 and outputs squarewaves which are equivalent to the original transmitted biphase code. This recovered biphase code is then supplied to digital discriminator 34 and to data recovery circuit 33. Discriminator 34 is essentially a pulse width detector which produces an output pulse on line 42 at three-quarters of a bit time referenced from the midpoint of the previous bit time so that a pulse is produced at one-quarter of the next succeeding bit time. This pulse is used as a clock input for a flip-flop in data recovery circuit 38 and the biphase signal from zero crossing detector 31 is used as the data input for the same flip-flop. Accordingly, the flip-flop is clocked during the first half of each bit time which represents the nonreturn-to-zero data. In this manner, the original data signal is supplied on line 24. Carrier detector 35 receives the output from discriminator 34 and produces a constant level signal on line 22 indicating that the communication link 12 is busy when an output is received from discriminator 34. Timing recovery circuit 32 restores the clock signal based on transitions of the biphase signal. A conventional clock recovery circuit is used for this purpose. All of the circuits of demodulator 30 are conventional and will therefor not be discussed in detail inasmuch as their construction would be well-known to one of ordinary skill in the art. 
     FIG. 4 shows the encoder 28, current mode transmitter 29 and transformer 41 in greater detail. FIG. 5 shows a timing diagram which clearly sets forth the operation of the circuit of FIG. 4. 
     Signal B represents the nonreturn-to-zero (NRZ) data supplied to encoder 28 on line 20. This data is supplied to the data input of a flip-flop 50 and to an exclusive OR gate 52. Clock signal C 1  is supplied on line 16 to the clock input of flip-flop 50, to one input of exclusive OR gate 54 and to the data input of a flip-flop 56. Signal D is taken from the inverted output of flip-flop 50 and supplied on line 58 to exclusive OR gates 52 and 54. The output of exclusive OR gate 52 is shown as signal G and is supplied to the data input of a flip-flop 60. The output of exclusive OR gate 54 is shown as signal E and is supplied to the data input of a flip-flop 62. A second timing signal C 0  has a frequency twice that of clock signal C 1 . Signal C 0  is generated internally by any means as would be apparent to one of ordinary skill in the art and is supplied on line 64 to the clock input flip-flop 56 and to the clock input of flip-flop 62. The noninverted output of flip-flop 56 is a third clock signal C 2  which is supplied on line 66 to the clock input of a flip-flop 68, and the inverted output of flip-flop 56 is supplied on line 70 to the clock input of flip-flop 60. The data input of flip-flop 68 is connected to line 18 and receives transmit request signal A. The non-inverting output of flip-flop 68 produces signal F which is connected through line 72 to the clear input of flip-flop 60 and to enable input of a current driver 74. The non-inverting output or flip-flop 60 is signal H which is supplied on line 76 to enable the input of a second current driver 78. The output of flip-flop 62 is signal I which is supplied on line 80 to the input of current drivers 74 and 78. Each current driver has an inverting output and a non-inverting output which are connected in parallel across the terminals 82 and 84 of the primary of center tap transformer 41. The secondary of transformer 41 is connected to communication link 12. The center tap of transformer 41 is connected to ground through line 86. Resistor 88 is connected between line 82 and line 86 and resistor 90 is connected between line 84 and line 86. Resistors 88 and 90 are provided to adjust the impedence of the transceiver as viewed from communication link 12. 
     In operation, timing signal C 1 , the request to transmit signal A and data signal B are received by the encoder 28. Encoder 28 generates timing signal C 0  in any well-known manner and produces timing signals C 2  and C 2  by clocking signal C 1  with C 0  in flip-flop 56. 
     Request to transmit signal A can be received anytime between t 1  and t 2  shown in FIG. 5. This signal is synchronized with timing signal C 2  in flip-flop 68 which delays signal A by a period not greater than one bit time of signal C 2  to produce signal F. Signal F disables current driver 74 until the second clock pulse of signal C 2  and clears flip-flop 60 until this time also. 
     Flip-flop 50 is triggered by the rising edge of clock signal C 1  pulses. The falling edge of the pulses of signal C 1  are synchronized with the beginning of the bit times for NRZ data signal B. Accordingly, flip-flop 50 serves to delay signal B by one-half of a bit time and invert signal B. The inverted signal B is exclusively ORed in gate 52 so as to produce signal g which is high except for a low level pulse which is emitted each time that NRZ signal B experiences a transition in state from one to zero or zero to one. This signal indicating transitions in state of NRZ signal B is widened to a full bit period in flip-flop 60 and synchronized with the trailing and leading one-half bit periods giving rise to the associated transition in signal B so as to control the amplitude of the pulse emitted from current mode driver in response to the associates transitional signals. 
     Exclusive OR gate 54 generates signal E which is the biphase signal corresponding to NRZ data signal B. Flip-flop 62 delays signal E by one-quarter bit time to produce biphase signal I which is synchronized with signal F. 
     Signal F enables current driver 74 just prior to the first bit time and removes the clear signal from flip-flop 60 simultaneously. The signal H output from flip-flop 60 remains low for an additional half bit time until the next rising pulse of the signal C 2 . Accordingly, current driver 78 remains disabled at least for the first one-half bit time after which signal G controls flip-flop 60 and controls current driver 78 so that the current driver is enabled and disabled in response to transitions of NRZ signal B. 
     As can be seen from FIG. 5, current driver 78 is disabled during the first half bit time of any pulse stream and is also disabled during the half bit time preceeding a change in state of the corresponding bit of NRZ signal B and during the next succeeding half bit time. Current driver 74 is enabled and driven strictly by biphase signal I. Accordingly, each half bit time of the biphase signal transmitted has a current output at least equivalent to the output of current driver 74 while each half bit time which either is not the first half bit time of the current stream or does not precede or succeed a change in state of NRZ signal B also has a current level increased by the output of current driver 78. 
     While the outputs of current drivers 74 and 78 can be adjusted to any desired relationship, it has been found that producing an equal output current is satisfactory. Thus, the transmitted bit times are either at current level times 1 or current level times 2. 
     As discussed above, current mode drivers are used in the present invention due to their inherent high impedence characteristics which minimizes the possibility of reflections on the data link 12 and therefor eliminates the requirement to physically switch the system during transmit and receive. The center tap transformer 41 is used to insure a true differential signal on the communication link. In addition, the impedence of the transformer and therefore the impedence looking back into the transceiver (Z j ) from communication link 12 is maintained at a high value by resistors 88 and 90 which have an equal resistance represented by R. This impedence is calculated by the following: 
     
         Z.sub.J =R/2n.sup.2 
    
     where n equals the turns ratio between the primary coils of center tap transformer 41 and the secondary of the transformer where both primary coils have the same number of turns. 
     In order to obtain true impedence matching, Z J   should equal the load resistance R L  on data link 12. In this case, R should equal 2R L . 
     However, in order to prevent loading of multiple units in a bus configuration, Z J  must be much greater than R L  which means that R must be much greater than 2R L . Accordingly, by increasing the resistance R to a relatively high value, units can be added or deleted from communication link 12 without deleteriously affecting the operation of the overall system. 
     The foregoing description has been set forth for purposes of illustrating the present invention but is not deemed to limit the scope thereof. Clearly, numerous modifications could be made to the invention withouth departing from the scope thereof as set forth in the appended claims.