Chapter Contents

 

9.0 Line Coding

 

9.1 Binary Line Codes

 

9.2 Bipolar and Biphase Line Codes

9.2.1 AMI

9.2.1.1 Binary N Zero Substitution

9.2.3 Block Line Codes

 

9.3 M-ary Correlation Codes

9.3.1 2B1Q

9.3.2 Correlation Coding

 

9.4 Nyquist Channels

9.4.1 Brick Wall Filter (Ideal LPF)

9.4.2 Cosine Channel (Duo-binary Channel)

9.4.2.1 Bipolar Encoding

9.4.2.2 Differential Encoding

9.4.3 Raised Cosine Channel

9.4.4 Sine or Modified Duo-binary Channel

 

9.5 Gaussian Pulse Shaping

 

Review Questions

 

For Further Research

 

 


9.0   Line Coding

 

Objectives

This section will:

·         Review the basic types of binary line codes

·         Examine bipolar line codes

·         Examine M-ary correlation codes

·         Introduce the idea of baud reduction by using controlled ISI

 

Hewlett Packard has produced an excellent application note summarizing the various forms of digital modulation.

Digital Modulation in Communications Systems - An Introduction by hp

 

9.1     Binary Line Codes

The term line code refers to the physical shape of the signal that is placed on the loop. Some of the more common two level or binary line codes include:

Signal

Comments

NRZ–L

Non return to zero level. This is the standard positive logic signal format used in digital circuits.

1 forces a high level

0 forces a low level

NRZ–M

Non return to zero mark

1  forces a transition

0  does nothing

NRZ–S

Non return to zero space

1  does nothing

0  forces a transition

RZ

Return to zero

1  goes high for half the bit period

0  does nothing

Biphase–L

Manchester. Two consecutive bits of the same type force a transition at the beginning of a bit period.

1  forces a negative transition in the middle of the bit

0  forces a positive transition in the middle of the bit

Biphase–M

There is always a transition at the beginning of a bit period.

1  forces a transition in the middle of the bit

0  does nothing

Biphase–S

There is always a transition at the beginning of a bit period.

1  does nothing

0  forces a transition in the middle of the bit

Differential Manchester

There is always a transition in the middle of a bit period.

1  does nothing

0  forces a transition at the beginning of the bit

Bipolar

The positive and negative pulses alternate.

1  forces a positive or negative pulse for half the bit period

0  does nothing

 

A bipolar signal is not actually a binary signal since it has 3 distinct levels.

Binary Line Code Waveforms

Each line code has advantages and disadvantages. The particular line code used is chosen to meet one or more of the following criteria:

·         Minimize transmission hardware

·         Facilitate synchronization

·         Ease error detection and correction

·         Minimize spectral content

·         Eliminate a dc component

9.2     Bipolar and Biphase Line Codes

Bipolar line codes have two polarities, are generally implemented as RZ and have a radix of three since there are three distinct output levels One of the principle advantages of this type of code, is that it can completely eliminate any DC component. This is important if the signal must pass through a transformer or a long transmission line.

Biphase line codes require at least one transition per bit time. This makes it easier to synchronize the transceivers and detect errors however; the baud rate is greater than that of NRZ codes.

NRZ and Biphase Spectral Density[1]

NRZ codes are more bandwidth efficient than bipolar RZ ones since their baud rate is half that of RZ codes and their spectral components go all the way down to 0 Hz.

CMI

In CMI†, marks are encoded as alternate polarity, full period pulses. Spaces are encoded by half a period pulse at the negative voltage and half period pulse at the positive voltage. This coding scheme has the advantage that it uses only two voltage levels instead of three, as does AMI.

9.2.1    AMI

AMI is a bipolar line code. Each successive mark is inverted and the average or DC level of the line is therefor zero. This system is used on T-carrier systems, but cannot be used on fiber optic links.

AMI is usually implemented as RZ pulses.

One of the weaknesses of transmitting only marks is that long strings of zeros cause the receivers to loose lock. It is essential to maintain lock because the T-carrier multiplexing scheme organizes data as a series of concatenated channels. If synchronism is lost, the specific channels cannot be identified. It is therefore necessary to impose additional rules on the signal to eliminate long strings of zeros.

9.2.1.1     Binary N Zero Substitution

Long strings of zeros can be prevented by substituting a sequence of 3, 6, or 8 zeros with a special code of the same length. The substitution code contains bipolar violations, which alerts the receiver to note the changes.

In an AMI system, two consecutive pulses of the same polarity constitute a violation. Therefor, if controlled violations are substituted for strings of zeros, the receiver can distinguish between substitutions and errors.

B6ZS

B6ZS is used on 6.312 Mbps, T2 AMI transmission links.

Since the last mark preceding a string of zeros may have been either positive or negative, two types of substitutions are used:

Polarity of previous mark

Substitution

-

0

-

+

0

+

-

+

0

+

-

0

-

+

 

These substitutions force two consecutive violations. A single bit error does not create this condition.

B6ZS Example:

        Original data:        0      1      0      0      0      0      0      0      0      1      0      1      1

              AMI data:        0      +      0      0      0      0      0      0      0      -       0      +      -

             B6ZS data:        0      +      0      +      -       0      -       +      0      -       0      +      -

B8ZS

This scheme uses the same substitution as B6ZS. Since the example above has a string of 7 zeros, no substitution would be made.

Polarity of previous mark

Substitution

-

0

0

0

-

+

0

+

-

+

0

0

0

+

-

0

-

+

 

B3ZS

B3ZS is more involved than B6ZS, and is used on DS–3 carrier systems. The substitution is not only dependent on the polarity of the last mark, but also on the number of marks (even and odd) since the last substitution. It should be remembered that the number zero is by definition even.

Previous Mark Polarity

Number of marks since the last substitution

Odd                     Even

-

0 0 -

+ 0 +

+

0 0 +

- 0 -

 

B3ZS Example:

Assuming an odd number of marks since the last substitution, we obtain:

From the above example, it seems that there are more negative pulses than positive ones, thus crating a DC component. It should be noted however, that this is statistically eliminated over longer data sequences.

HDB3

HDB3 is used in Europe and introduces bipolar violations when four consecutive zeros occur. The second and thirds zeros are left unchanged, but the fourth zero is given the same polarity as the last mark. The first zero may be modified to a one to make sure that successive violations are of alternate polarity.[2]

Previous Mark Polarity

Number of marks since the last substitution

Odd                     Even

-

0 0 0 -

+ 0 0 +

+

0 0 0 +

- 0 0 -

 

HDB3 Example:

From the above example, it seems that there are more positive pulses than negative ones, thus crating a DC component. It should be noted however, that this is statistically eliminated over longer data sequences.

The last pulse in the substitution is the V or violation pulse. If there have been an even number of substitutions, a B or balancing pulse is added to prevent a dc buildup.[3]

9.2.3    Block Line Codes

Block codes with a radix of 2 or 3 can be used on digital loops.

These schemes operate on bytes rather than bits. Some transmit the signal as binary levels, but most use multi-level pulses.

A binary block code has the designation nBmB, where n input bits are encoded into m output bits. The most common of these is the 3B4B code.

3B4B Coding

Input

Output

000

- - + - or + + - +

001

- - + +

010

- + - +

011

- + + -

100

+ - - +

101

+ - + -

110

+ + - -

111

- + - - or + - + +

 

In Europe 4B3T, which encodes 4 binary bits into 3 ternary levels, has been selected as the BRA for ISDN.

Some block codes do not generate multilevel pulses. For example, 24B1P or 24B25B simply adds a P or parity bit to a 24-bit block.

9.3     M-ary Codes

Line codes with a radix of 4 or more are also block codes, and have the potential to significantly reduce the baud rate.

9.3.1    2B1Q

In North America, 2B1Q which encodes 2 binary bits into 1 quaternary level has been selected for BRA.

2B1Q Coding

Input

Output

00

-3

01

-1

10

+1

11

+3

 

9.3.2    Correlation Coding

One of the chief aims of digital communications technology is to pack as many bits of information though a system as possible. This is particularly true in long haul, fixed bandwidth systems such as digital microwave radio and satellites. Although it is not possible to exceed the Shannon-Hartly limit, the Nyquest bit rate [2 bits per Hz] can be exceeded. This is accomplished by introducing a controlled amount of inter-symbol interference in the signal.

Partial response signaling alters the shape of a data pulse to control the signal spectrum and make efficient use of the transmission channel.

In order to do this, it is necessary to determine the time and frequency domain characteristics of the communications channel or system. This requires the use of the Fourier transform.

In most cases, signal shapes are specified in the time domain, but communications channels are specified in the frequency domain. Since the physical channel represents the ‘real world’, it is necessary to first examine the channel frequency characteristics and then determine the most suitable shape of the data signal in the time domain.

A communications transmission link or channel can be regarded as a sort of filter. The filter characteristic may be defined by the physical attributes of the channel or by government regulations and industry standards. Radio based systems for example, have severe restrictions placed on user frequency bands and each broadcast channel may be viewed as a bandpass filter.

It is often difficult to find a mathematical expression defining the frequency response of actual filters and transmission systems. Consequently, the analysis is generally performed on simpler functions, which can then be used to approximate complex systems. The most common family of channel types are Nyquist channels.

9.4     Nyquist Channels

The principle channel types of interest are the cosine, raised cosine, and sine. The brick wall response is also of interest since it provides the basic tool needed to evaluate the other channel types.

Nyquist Communications Channel Categories[4]

Class

Channel

Name

Channel Response

Impulse

Notation f[d]

Radix

1

Ideal LPF

1

1

2

1

Cosine

[Duo-binary]

1,1

3

2

Raised

Cosine

1,2,1

5

3

 

2,1,-1

5

4

Sine

[Modified

Duo-binary]

1,0,-1

3

5

 

1,0,-2,0,1

5

 

The output of each channel type is naturally slightly different.

Fourier Analysis Simplifications

Fourier analysis can often be simplified by observing the function symmetry:

·         For even functions, use the inverse cosine transform

·         For odd functions use the inverse sine transform

·         Functions that do not exhibit symmetry must use both parts of the transform

·         This is often called the impulse response because it is obtained by injecting a Dirac Delta pulse [d] into the input.

·         The complex transform is also used in a more mathematically rigorous regime when the negative frequency domain is considered.

9.4.1    Brick Wall Filter (Ideal LPF)

The ideal low pass channel has an infinite roll-off at the cutoff frequency. This is of course not technically achievable.

(Some textbooks take a more rigorous approach and include negative frequencies. From an engineering perspective, the idea of LPFs having a negative frequency response is not particularly meaningful. For a more thorough discussion of the Fourier Transform, please see Appendix 3)

The time domain response (also called the impulse response) is found by taking the inverse Fourier transform of the channel:

A plot of this function resembles:

This function is the familiar sync or sampling function and forms the basic time domain element used to analyze M-ary pulses.

It should be noted, that if a time domain pulse of this exact shape were created, it would have an ideal cutoff in the frequency domain. Time domain pulses of this exact type however, are not practical, since the leading and trailing tails never completely vanish.

The data input stream 1110100010001111110 produces the following output response:

Brick Wall Response (Ideal LPF)

Since the impulse response of an ideal LPF consists of one sinc pulse, it is sometimes written as f[d] = 1.

If two d pulses separated by  occur at the filter input, the peak of the second sync response will occur at a zero crossing of the first response. This suggests that at that precise moment, it is possible to distinguish between both pulses even though a great deal of overlap or ISI has occurred.

By normalizing the bandwidth to unity, it can be observed that the maximum bit rate with no ISI is:

Controlling ISI forms the bases of M-ary signaling theory and allows the Nyquest rate to be exceeded. If a transmitted pulse waveform consists of sinc components, it is possible to separate the sinc components at the receiver, thus exceeding the Nyquest rate.

9.4.2    Cosine Channel (Duo-binary Channel)

The cosine shape is well defined mathematically, being the first quarter of a cosine waveform. Its impulse response consists of 2 sinc components.

For the impulse response to be comprised of unit sinc pulses, the cosine filter is often modified by giving it an amplitude of 2:

The data input 1110100010001111110 produces the following output responses:

Cosine Channel Response

Cosine filters are also known as duo-binary filters and are used RD3 digital microwave radio systems and ISDN transmission systems using the 4B3T line format.

RD3 Radio Transmitter[5]

Notice the use of a cosine filter at the transmitter output.

The cosine impulse response is found by taking the real (or even) part of the inverse Fourier transform:

 

A duo-binary pulse can be decomposed into two sinc pulses:

Since the overall response is composed of two sinc pulses the impulse response is written as f[d] = 1, 1. Since the maximum bit rate is 1/t and the first zero crossing occurs at t = 3/4fc, and it would appear that the maximum bit rate is:

This means that 1.33 bits/Hz can be transmitted through this filter or channel.

When the bandwidth B is normalized to unity, the overall pulse shape is composed of two sinc pulses shifted by t = ± 0.25 This is identical to that obtained from a brick wall filter excited by two impulses separated by t = 0.5, applied to the input!

If two impulses are applied to a cosine channel, the response is:

 If they are spaced 0.5T apart. The leading sinc envelope of one pulse completely overlaps the trailing sinc envelope of the previous pulse.

If the leading sinc envelope of the second pulse completely overlaps the trailing sinc envelope of the first pulse, a correlation over 1 bit period occurs and the overall output resembles:

At first glance, it would appear that this represents only one bit of information, but if a receiver can decompose this pulse into its sinc components, two bits of data can be extracted.

To do this, the RD3 radio receiver has a 1 bit delay feedback loop. This performs a 1-bit correlation since it relates the current signal state to the previous state.

RD3 Radio Receiver[6]

Injecting a controlled amount of ISI has given rise to a multilevel waveform:

Input

Peak Output

Zero or space

0

Single mark

1.2

2 or more consecutive marks

2.0

 

Using delta pulses as input marks while leaving spaces as zero, causes synchronization problems in the receiver when long strings of zeros occur. This can be avoided by using a very simple bipolar encoding scheme.

9.4.2.1     Bipolar Encoding

In order to eliminate synchronization problems associated with long strings of zero, a mark [1] is used to create a positive impulse [+d] response, and a space [0] is used to create a negative impulse [-d] response. This generates a minimum of three output levels.

Example:

An input data stream of 1 1 1 0 1 0 0 0 1 0 0 0 would resemble:

The corresponding cosine channel output response is:

It is a little difficult to picture what the overall output shape is, but if each output pulse is decomposed into its sinc pulse pairs, it becomes clear. Recall that for every input d pulse, there are 2 sinc pulses at the output.

The actual output is:

Notice that there is a reduction in the number of zero crossings in the signal, and therefore a reduction in the channel bandwidth requirements. Note also that there are three possible levels at the sampling instant:

Input

Peak Signal

2 or more consecutive marks

+2.0

Alternating marks and spaces

0

2 or more consecutive zeros or spaces

-2.0

 

There is at least 1 interval at 0 when switching between ±2 levels. If the signal returns to its original + or - 2 level, it must remain at 0 for an even number or intervals.

In order to correctly sample the signal, the sampling instant must be shifted slightly to correspond to the peak of the Sinc pulse.

Converting this back to a binary signal is somewhat of a challenge since:

·         The binary value of any particular pulse depends on the past sample

·         The zero level can correspond to a mark or a space

·         Errors can propagate.

To overcome these problems, the binary input signal can be differentially encoded before being shaped.

9.4.2.2     Differential Encoding

Differentially encoding the signal allows the output signal magnitude to be directly related to the input data.

The exclusive OR gate goes high only when the current input and the past signal input are different, a form of differential encoding. A mark will now correspond to a 0 output level, and a space to the ±2 level.

Because of the delay, it is necessary to establish an initial condition when differential encoding. In the following example, we will assume that the initial logic state at point B was 1.

The example in the above MathCAD file, can be intuitively approximated:

The approximated XOR output resembles:

Note that by letting a mark equal zero and a space equal a positive or negative pulse, the original data input can be read directly at the cosine channel output.

The exact output is:

In ISDN applications, 4 binary bits can be mapped into 3 ternary levels, resulting in 4B3T encoding. This results in some surplus states since 4 binary symbols represent 16 possible conditions, but 3 ternary symbols represent 27 possible conditions. These additional states can be used by the service provider to maintain housekeeping functions without reducing the customer’s bit stream.

9.4.3    Raised Cosine Channel

This shape is also known as a Hanning window, and is a better approximation of an analog filter since the response curve gradually tapers off.

This function is often written slightly differently so that the impulse response will consist of unit sinc pulses:

The filter impulse function is found by:

But B = 2pfc and by normalizing frequency to fc = 1, we obtain:

The overall response is composed of three overlapping sinc pulses:

Using this function would appear to be a step backwards since the first zero crossing occurs at T = 1.0. This however is not the case. Notice that the tail portion of this response is quite small.

The raised cosine impulse response is composed of three sinc pulses separated by T = 0.5, the middle one of which is twice as large as the outer ones. Therefor this function is noted as f[d] = 1, 2, 1.

In the cosine filter, the first sinc envelope of the second pulse was allowed to completely overlap the second sinc envelope of the first pulse. Thus a correlation over 1 bit period occurred.

A correlation over 2 bit periods can be obtained by carefully controlling the ISI and allowing two sinc envelopes on consecutive pulses to overlap. This results in a 4 level transmission scheme:

Input

Peak Output

Zero or space

0

Single mark

1

2 consecutive marks

3

3 or more consecutive marks

4

 

The data input 1110100010001111110 produces the following output responses:

Raised Cosine Channel Response

One disadvantage of this system is that the frequency components go all the way down to DC. Some transmission methods cannot handle low frequency or DC. One method which retains 4 level or quaternary signals found in a raised cosine channel but has no DC component, is the modified duo–binary technique and is characterized by sine filters.

It should be noted that the Raised Cosine channel is actually consists of a whole family of curves. Each of these differs by the roll-off factor.

9.4.4    Sine or Modified Duo-binary Channel

In order to obtain unity sinc pulses, this function is normally written as:

This is also known as a modified duo-binary system. It is used on single sideband radio systems where the DC levels associated with cosine responses cannot be tolerated.

SSB Radio Transmitter[7]

Notice that two bit precoding is used in the transmitter. This allows the receiver to make each binary decision based on the present received value. It also eliminates the possibility of error propagation.

SSB Radio Receiver[8]

Notice that two-bit correlation is performed in the receiver.

The impulse response of the sine filter is found by taking the imaginary [or odd] part of the inverse Fourier transform.

Normalizing this function we obtain:

This response is composed of two sinc pulses separated by t = 1.0.

This function is usually is presented with the positive cycle appearing first [which is actually the inverse of the above expression].

In the previous types of channels, the sinc components were only separated by t = 0.5. This function is written as f[d] = 1, 0, -1.

The above waveform represents a mark. A space is represented by the inverse response. Each input data pulse creates sinc pulse centered thus:

The modified duobinary system can be implemented by cascading a delay element equal to T, and inverter, with a standard duobinary filter as follows:

This system is used on digital single sideband radio and can carry 4 bits per Hz of bandwidth.

Example

A data stream of 1 1 1 0 1 0 0 0 1 0 0 0, in terms of d pulses resembles:

The sinc envelope impulse equivalent resembles:

Or more accurately, the transmitted output is:

The data input 1110100010001111110 produces the following output responses:

Note that this results in a quaternary or 4 level system.

In ISDN applications, 2 binary bits can be mapped into 1 quaternary level, resulting in 2B1Q encoding. There are no surplus states since 2 binary symbols represent 4 possible conditions, as does 1 quaternary symbol.

The process of correlation or sinc envelope overlap can theoretically be continued indefinitely. However, in practice this approach is limited to 15 amplitude levels. This is because the S/N ratio requirements become more stringent as the number of levels increases.

9.5     Gaussian Pulse Shaping

Gaussian channels are not the same as Nyquist channels, since there is no timing criteria that can guarantee zero inter-symbol interference.

However, this kind of shape does offer the advantage of bandwidth efficiency and clock recovery.

Review Questions

 

Quick Quiz

1.     What is the Nyquest bit rate in a 10 KHz ideal low pass filter?

_________________________________________________________

2.     The [sine, cosine] channel has a bipolar impulse response.

3.     The [sine, cosine] channel has a correlation over 2 bits.

4.     A modified duo-binary SSB microwave transmitter has a correlation span of [1, 2, 3] bits.

Analytical Problems

1.     Given the frequency response H(w) = 1 for 0 ≤ w B , derive the impulse response of an ideal brick wall filter:

 

2.     Given a modified duo-binary channel or sine filter:

a) Sketch the frequency response

b)    Why is this function sometimes written as: f[d] = 1, 0, -1?

c) Sketch the approximate time domain response

d)    How does it differ from a duo-binary system?

e) How many bits per hertz can this system transmit?

f) Where is this system used?

Composition Questions

1.     Describe the methods employed to remove long strings of zeros in binary transmissions.

2.     What is the purpose of pulse shaping in data transmission systems?

3.     Where is the duobinary transmission scheme used?

4.     Discuss the operating principles and applications in correlation based communications links.

For Further Research

 

Hermann J. Helgert, Integrated Services Digital Networks, Addison-Wesley, New York, (1991)

http://www.laruscorp.com/t1bklt.htm

http://www.national.com/design/

http://pilot.msu.edu/user/hsuhsuni/adsl.htm

http://ironbark.bendigo.latrobe.edu.au/courses/bcomp/c202/lectures/

http://stap.colorado.edu/~hintonm/prs/moreinfo.htm

http://www.minacom.com/DigitalModulationTechniques.htm

http://pioneer.hannam.ac.kr/doc/staffs/note/comm.html

http://www.comcore.com/

http://www.anl.gov/ECT/network/

http://www.teles.de/

Gaussian Processes

http://www.cs.utoronto.ca/~carl/gp.html

 



[1]       Digital Telephony (2nd ed.), John Bellamy, Figure 4.13

      Coded Mark Inversion

       Alternate Mark Inversion

       Binary  6 Zero Substitution

       Binary 3 Zero Substitution

          High Density Binary 3

[2]       Freeman, Telecommunication Handbook, & Stallings W., ISDN an Introduction

[3]       Freeman, Telecommunication Handbook, & Stallings W., ISDN an Introduction

[4]       Digital, Analog, and Data Communication, William Sinnema, Table 8-2

[5]       Digital, Analog, and Data Communication, William Sinnema, Figure 8-24a

[6]       Digital, Analog, and Data Communication, William Sinnema, Figure 8-24b

       4 Binary  3 Ternary

[7]       Digital, Analog, and Data Communication, William Sinnema, Figure 8-30a

[8]       Digital, Analog, and Data Communication, William Sinnema, Figure 8-30b

       2 Binary 1 Quaternary