Manchester Encoding

This post presents a description of the Manchester Line Code. It also describes the Manchester Line Code’s strength, weaknesses and where it is deployed.


What is the Manchester Line Code

The Manchester Line Code is a line code that transports both data and timing information on a single serial binary data stream.

The Manchester Line Code is used in the Physical Layer.

A Manchester Line Encoder works by encoding each data bit to be either low-then-high or high-then-low – for equal amounts of time.  Since this encoded data is “high” and “low” for equal times, there is no DC bias within this signal.

More specifically, IEEE 802.3 specifies that a Manchester encoder should encode a “1” bit by setting the output to a logic “low” for the first half of a bit period and then by setting the output to a logic “high” for the second half of this bit period.  This encoding scheme requires a rising clock edge at the middle of this bit period.  Conversely, IEEE 802.3 also specifies that a Manchester encoder should encode a “0” bit by setting the output to a logic “high” during the first half of a bit period and then set the output to a logic “low” for the second half of the bit period.  This situation requires that a falling clock edge occurs in the middle of this bit period.

Figure 1 presents an illustration of a data stream that is being encoded into the Manchester format.  The very top trace is that of a clock signal.  The middle signal trace contains the data (that we wish to encode).  Finally, the bottom signal trace presents the resulting encoded data.

Manchester Line Code

 

Figure 1, An Illustration of a Data Stream being encoded into the Manchester format.  

Manchester coding works by exclusive-ORing (XOR) the Original Data and the Clock signal as Table 1 presents below.

Table 1, Encoding Data into the Manchester Line Code

Manchester Encoding Algorithm

 

Where did the Manchester Line Code come from?  

The University of Manchester (in the United Kingdom) developed the Manchester Line Code.

What are its strengths?  

The Manchester Line Code has two basic strengths:

  1. It is an electrically balanced line code and has no DC bias.
  2. It provides a large number of clock edges for “clock and data recovery” at the remote receiving terminal.  The Manchester Line Code does not need to use any “Zero-Suppression” scheme.

What are its weaknesses?  

Since Manchester encoding requires a clock edge for each bit of data, the frequency content of a Manchester-encoded signal is quite high.  This fact limits the data rates that the user can transmit a Manchester encoded data stream over a band-limited channel.  In other words, the Manchester line code is not suitable for transmitting high-speed signals over band-limited channels.

Where is it used?  

10BASE-T (10Mbps Ethernet over Twisted Pair) applications use the Manchester Line Code.

Other Line Codes

  • RZ (Return to Zero)
  • NRZ (Non-Return to Zero)
  • NRZI (Non-Return to Zero-Inverted)