Manchester encoding is a serial data signaling system originally developed at the University of Manchester for use on early generation computer systems with magnetic drum and 1600 bpi magnetic tape data storage devices. It is in widespread use today in network communications such as 10BaseT Ethernet and MIL-STD-1553, as well as consumer IR devices and DALI lighting controls.
Manchester waveforms are “self-clocked”; the clock signal is embedded in the transmitted data using an exclusive-OR Boolean function. Embedding the clock means that only one signal line is needed, rather than two or three that are required with standards such as I2C and SPI. This makes for simpler and lower-cost network wiring layout, and has several other advantages:
As with any engineering design choice, these advantages don’t come for free. Embedding the clock doubles the required network bandwidth. But for many applications Manchester is a good and widely used communications protocol.
Manchester encoding uses an exclusive-OR Boolean function to combine the clock and data on a single channel. This means that binary information is conveyed as transitions rather than levels.
The transmitted Manchester data is clocked on the rising edge of the serial clock.
Note that there is always at least one transition per bit period, to enable clock recovery by the receiver and AC coupling across the network. The receiving device has to detect the timing of the fastest complete cycle of the incoming waveform to work out the bit period. From there, low-to-high transitions are received as binary zeros, high-to-low transitions as ones. (Or vice versa – depending on how the standard is implemented.)
In the absence of any data to be sent, or when there are long sequences of zeros or ones, the clock information is still transmitted to keep the receiver synchronized.
Manchester waveforms can be decoded with PicoScope. From the Tools menu select Serial Decoding, then Create, and select Manchester from the list of available protocols.
Transmitted Manchester data is normally sent in packets that are arranged in fields that make up the complete protocol per the design specification for a particular application. Field settings include:
The PicoScope Manchester decoder settings panel allows each field to be set up to match the system design.
Decoded waveform data can be displayed:
Double-clicking on a line in the table highlights the corresponding packet in the graph display.