[0001] The invention relates to a code generator for producing a transmission code in response
to an input serial binary code and to a data transmission system including such a
code generator.
[0002] For the baseband transmission of binary data in local telephone networks the transmitted
signal should have a small low frequency content and since the signal will normally
be required to pass through transformers there should be no d.c. component. This has
been achieved by encoding the binary data before transmission to produce a code having
the required properties. There are a number of codes which have the property of suppressing
the lower frequencies but the most effective is that known as WAL2 (or top-hat) which
has a second order zero in its spectrum at zero frequency (d.c.) and consequently
the smallest low-frequency energy. However this code has a relatively large high frequency
(greater than the bit frequency) content which leads to an increased sensitivity to
crosstalk between different systems.
[0003] It is an object of the invention to provide a code generator for producing a transmission
code having a lower high frequency content than WAL2 while retaining an acceptably
small low frequency content.
[0004] The invention provides a code generator for producing a transmission code in response
to an input serial binary code having a bit period T, the code generator comprising
means for generating a signal having a first value for a period T/2 located centrally
in the bit period in response to a bit of one binary state, means for generating a
signal having a second value for the period T/2 in response to a bit of the other
binary state, means for generating a signal having the second value during the interval
between the T/2 periods of successive bits when two consecutive bits are of the one
binary state, means for generating a signal having the first value during the interval
between the T/2 periods of successive bits when two consecutive bits are of the other
binary state, and means for producing a signal having a value intermediate the first
and second values during the interval between the T/2 periods of successive bits when
two consecutive bits are of different binary states.
[0005] The code generator of the invention produces a transmission code in which the double
frequency cycle produced by the WAL2 code when the binary input changes state is replaced
by a steady signal located midway between the two extreme values. In this way the
high frequency content of the signal is reduced. A further property of the code is
that the transmitted power is 75% of the peak power whereas for WAL2 it is 100% of
the peak power. This is as a result of holding the signal at zero level for the interval
between a 1 and a 0 or vice versa. This interval is half a bit period and 50% of such
intervals are zero.
[0006] The main disadvantage is that the output is a three level signal and the encoder
must have good linearity if the low frequency spectral characteristics is to be preserved.
[0007] The code generator may comprise a first current source connected by a first switch
to a summing network, a second current source connected by a second switch to the
summing network, the first and second current sources producing substantially equal
currents, and a control circuit for operating the first and second switches; wherein
to produce a signal of the first value the control circuit produces signals to close
the first and second switches so that both current sources are connected to the summing
network, to produce a signal of the second value the control circuit produces signals
to open the first and second switches so that both current sources are disconnected
from the summing network, and to produce a signal having the intermediate value the
control circuit produces signals to close one of the first and second switches and
to open the other of the first and second switches so that one of the current sources
is connected to the summing network while the other of the current sources is disconnected
from the summing network.
[0008] This provides a simple implementation for the code generator with the two extreme
values determined by for the one extreme the sum of the current generators and for
the other extreme zero current through the summing network. The intermediate value
is determined by one or other of the two current sources which should be closely matched
but a certain amount of imbalance is permissible since for a long train of symbols
each current source will be utilised an equal number of times and the nominal zero
level will take their average level.
[0009] An embodiment of the invention will now be described, by way of example, with reference
to the accompanying drawings, in which
Figure 1 shows a serial binary code encoded into the WAL2 code and into the code produced
by the code generator according to the invention,
Figure 2 shows the frequency spectrum of the WAL2 code and the code produced by the
code generator according to the invention,
Figure 3 is a schematic circuit diagram of a code generator according to the invention,
and
Figure 4 illustrates the signals occurring at various points in the code generator
shown in Figure 3.
[0010] Figure 1 illustrates waveforms used for transmitting binary data in the form of a
continuous waveform and in terms of the sywbols for each bit to be transmitted. Figure
la) shows a serial binary code having the sequence 100101 while Figure lb) shows that
sequence encoded for transmission into a code known as WAL2. This name has been given
to the code since the waveforms in the element period T, Figure ld) can be defined
in terms of 2n
d-order Walsh Functions. The WAL2 code is described in a paper by R.J. Westcott and
R.A. Boulter entitled "A Comparison of Modulation Systems for Data Transmission over
Physical Pairs in a Synchronous Digital Data Network" published in International Symposium
of Subscribers Loops and Services 1974, pages 7.4.1 to 7.4.9. As can be seen from
Figure la) and b) whenever a charge from a binary 1 to a binary 0 or vice versa is
required the WAL2 code produces a cycle at twice the bit frequency which increases
the high frequency energy and leads to a greater sensitivity to cross talk between
different systems.
[0011] The code generator according to the invention produces a transmission code as shown
in Figure lc) in response to the binary code shown in Figure la). As can be seen from
Figures la) to c) the double frequency cycle of the WAL2 code is replaced by holding
the signal constant intermediate (0) the two extreme levels (1,-1). In this way the
high frequency energy is reduced relative to the WAL2 code while the small low frequency
content is substantially retained. Figure 2 shows the frequency spectrum of the WAL2
code and that of the code (NC) produced by the code generator according to the invention.
The substantial reduction in the high frequency component can be clearly seen from
these spectra.
[0012] Figure 3 shows an embodiment of a code generator according to the invention having
an input 1 to which a binary code is applied. For the purpose of illustrating the
operation of the code generator it will be assumed that the binary code applied to
terminal 1 is of the form shown in Figure 4d). Three clock pulse trains as illustrated
in Figure 4a) b) and c) are applied to inputs 2, 3 and 4 respectively. Inputs 1 and
4 are connected to respective inputs of an exclusive NOR gate 5 which produces the
waveform shown in Figure 4e) on line 6. The output of NOR gate 5 is fed via line 6
to the D input of a clocked D type bistable circuit 7 whose clock input is connected
to the input 2. The Q output of the bistable 7 is connected via a line 8 to the D
input of a clocked D type bistable circuit 9 and via a line 10 to the D input of a
clocked D type bistable circuit 11. The input 2 is connected to the clock input of
bistable 9 while the input 3 is connected to the clock input of bistable 11. The Q
output of bistable 9 is connected to the D input of a clocked D type bistable circuit
12 whose clock input is connected to input 3. Bistables 7 and 9 form a two stage shift
register with the Q output of bistable 7 providing the waveform 4f) and the Q output
of bistable 9 providing waveform 4g). It can be seen from Figure 4 that waveform 4f)
is waveform 4e) delayed by one period of the clock 4a) and waveform 4a) is waveform
4e) delayed by two periods of the clock 4a). The Q output of bistable 11 which is
shown as waveform 4h) is fed via a line 13 to the base of a
ME transistor Tl while the Q output of bistable 12 which is shown as waveform 4i) is
fed via a line 14 to the base of a pnp transistor T2. The emitter of transistor Tl
is connected to the emitter of a pnp transistor T3 and via a constant current source
Il to a positive supply rail V. Similarly the emitter of transistor T2 is connected
to the emitter of a pnp transistor T4 and via a constant current source I2 to the
positive supply rail V. The collectors of transistors Tl and T2 are directly connected
to earth while the collectors of transistors T3 and T4 are commoned and connected
to earth via a resistor Rl. The bases of transistors T3 and T4 are connected to a
bias potential VB. The collectors of transistors T3 and T4 are additionally connected
through a series capacitor Cl to the input of a line driver 15 whose output is connected
to the output 16 of the code generator. The input of the line driver 15 is connected
via a resistor R2 to earth.
[0013] The clock signals applied to inputs 2, 3 and 4 may be generated in known manner by
means of an oscillator driving a chain of binary dividers. As can be seen from Figure
4 clock signal 4b) is half the frequency of clock signal 4e) while clock signal 4c)
is half the frequency of clock signal 4b). The period of the clock signal 4c) is equal
to the bit period T of the binary signal but is offset with respect to the bit periods
by a period T/4. Thus the combination of the binary signal 4d) with the clock signal
4c) in the exclusive NOR gate 5 produces the WAL2 code as shown in waveform 4e). The
output of bistable 9, waveform 4g) is delayed with respect to the output of bistable
8, waveform 4f), by T/4 i.e. the period of the clock signal 4a). The outputs of bistables
8 and 9 are clocked into the bistables 11 and 12 by the clock signal 4c) and as a
result the output of bistable 12 on line 14 is an inverted version delayed by T/2
of the output of bistable 11 on line 13.
[0014] The signals on lines 13 and 14 are used to form a three level signal by routing two
nominally equal currents I
1 and I
2 into the summing resistor Rl. Assuming that the bistables 11 and 12 are formed as
TTL integrated circuits and VB is approximately +1.5 Volts a logic '1' on lines 13
and 14 will cause a current I
l + I
2 to flow into resistor Rl, a logic '0' on lines 13 and 14 will prevent any current
flowing into resistor Rl, a logic '1' on the line 13 will cause a current of I
l to flow into the resistor Rl and a logic '1' on the line 14 will cause a current
of I
2 to flow into the resistor Rl.
[0015] Thus the output of amplifier 15 will be of the form shown in Figure 4j). As can be
seen from Figure 4 the code produced by the code generator replaces the cycle at twice
the bit frequency produced in the WAL2 code when the binary signal changes state by
a constant level for half the bit period. This has the result of reducing the high
frequency content of the transmitted signal while still retaining a second order zero
at zero frequency.
[0016] The emitter coupled pair circuits formed by transistors Tl and T3 and transistors
T2 and T4 act as first and second switches to switch the currents produced by the
first and second current sources I
1 and I
2 into the summing network formed by resistor Rl. The switches are controlled by signals
on lines 13 and 14 generated by the control circuit comprising the exclusive NOR gate
5 and the D type bistable circuits 7, 9, 11 and 12. It would, of course, be possible
to use alternative switching circuits in place of the emitter coupled pair circuits.
1. A code generator for producing a transmission code in response to an input serial
binary code having a bit period T, the code generator comprising means for generating
a signal having a first value for a period T/2 located centrally in the bit period
inresponse to a bit of one binary state, means for generating a signal having a second
value for the period T/2 in response to a bit of the other binary state, means for
generating a signal having the second value during the interval between the T/2 periods
of successive bits when two consecutive bits are of the one binary state, means for
generating a signal having the first value during the interval between the T/2 periods
of successive bits when two consecutive bits are of the other binary state, and means
for producing a signal having a value intermediate the first and second values during
the interval between the T/2 periods of successive bits when two consecutive bits
are of different binary states.
2. A code generator as claimed in Claim l, comprising a first current source connected
by a first switch to a summing network, a second current source connected by a second
switch to the summing network, the first and second current sources producing substantially
equal currents, and a control circuit for operating the first and second switches;
wherein to produce a signal of the first value the control circuit produces signals
to close the first and second switches so that both current sources are connected
to the summing network, to produce a signal of the second value the control circuit
produces signals to open the first and second switches so that both current sources
are disconnected from the summing network, and to produce a signal having the intermediate
value the control circuit produces signals to close one of the first and second switches
and to open the other of the first and second switches so that one of the current
sources is connected to the summing network while the other of the current sources
is disconnected from the summing network.
3. A code generator as claimed in Claim 2, in which the summing network comprises
a resistor.
4. A code generator as claimed in Claims 2 or 3, comprising a line driver whose input
is a.c. coupled to the summing network.
5. A data transmission system comprising a transmitter, a receiver and a transmission
medium in which the transmitter includes a code generator as claimed in any preceding
claim.