# Manchester code

> Mediated Wiki article. Canonical URL: https://mediated.wiki/source/Manchester_code
> Markdown URL: https://mediated.wiki/source/Manchester_code.md
> Source: https://en.wikipedia.org/wiki/Manchester_code
> Source revision: 1350380523
> License: Creative Commons Attribution-ShareAlike 4.0 International (https://creativecommons.org/licenses/by-sa/4.0/)

Line code used in early magnetic data storage and Ethernet

In [telecommunications](/source/Telecommunications) and [data storage](/source/Computer_data_storage), **Manchester code** (also known as **phase encoding**, or **bi-phase code**) is a [line code](/source/Line_code) in which the encoding of each data [bit](/source/Bit) is either low then high, or high then low, for equal time. It is a [self-clocking signal](/source/Self-clocking_signal) with no [DC component](/source/DC_component). Consequently, electrical connections using a Manchester code are easily [galvanically isolated](/source/Galvanic_isolation).

Manchester code derives its name from its development at the [University of Manchester](/source/University_of_Manchester), where the coding was used for storing data on the magnetic drums of the [Manchester Mark 1](/source/Manchester_Mark_1) computer.

Manchester code was widely used for [magnetic recording](/source/Magnetic_recording) on 1600 bpi computer tapes before the introduction of 6250 bpi tapes, which used the more efficient [group-coded recording](/source/Group-coded_recording).[1] Manchester code was used in early [Ethernet physical layer](/source/Ethernet_physical_layer) standards and is still used in [consumer IR](/source/Consumer_IR) protocols, [RFID](/source/RFID) and [near-field communication](/source/Near-field_communication). It was and still is used for uploading commands to the [Voyager spacecraft](/source/Voyager_spacecraft).[2]

## History

Manchester code derives its name from its development at the [University of Manchester](/source/University_of_Manchester), where the coding was used for storing data on the magnetic drums of the [Manchester Mark 1](/source/Manchester_Mark_1) computer. The code was invented by Professor F.C. Williams and first implemented by G.E. Thomas, Williams' research student. In April 2026 an IEEE Milestone was dedicated to the Manchester Code.[3]

## Features

Manchester coding is a special case of [binary phase-shift keying](/source/Binary_phase-shift_keying) (BPSK), where the data controls the [phase](/source/Phase_(waves)) of a square wave [carrier](/source/Carrier_signal) whose frequency is the data rate. Manchester code ensures frequent line voltage transitions, directly proportional to the clock rate; this helps [clock recovery](/source/Clock_recovery).

The [DC component](/source/DC_component) of the encoded signal is not dependent on the data and therefore carries no information. Therefore, connections may be [inductively](/source/Inductive_coupling) or [capacitively](/source/Capacitive_coupling) coupled, allowing the signal to be conveyed conveniently by galvanically isolated media (e.g., Ethernet) using a [network isolator](/source/Network_isolator)—a simple one-to-one [pulse transformer](/source/Pulse_transformer) which cannot convey a DC component.

### Limitations

Manchester coding's data rate is only half that of a non-coded signal, which limits its usefulness to systems where bandwidth is not an issue, such as a [local area network (LAN)](/source/Local_area_network_(LAN)).[4]

Manchester encoding introduces difficult frequency-related problems that make it unsuitable for use at higher data rates.[4][5]

There are more complex codes, such as [8B/10B encoding](/source/8B%2F10B_encoding), that use less [bandwidth](/source/Bandwidth_(signal_processing)) to achieve the same data rate but may be less tolerant of frequency errors and [jitter](/source/Jitter) in the transmitter and receiver reference clocks.[*[citation needed](https://en.wikipedia.org/wiki/Wikipedia:Citation_needed)*]

## Encoding and decoding

An example of Manchester encoding showing both [conventions for representation of data](#Conventions_for_representation_of_data), where : *[1337](/source/Leet)*10 = *10100111001*2

Manchester code always has a transition at the middle of each bit period and may (depending on the information to be transmitted) have a transition at the start of the period also. The direction of the mid-bit transition indicates the data. Transitions at the period boundaries do not carry information. They exist only to place the signal in the correct state to allow the mid-bit transition.

### Conventions for representation of data

There are two opposing conventions for the representation of data.

The first of these was first published by G. E. Thomas in 1949 and is followed by numerous authors (e.g., [Andy Tanenbaum](/source/Andy_Tanenbaum)).[6] It specifies that for a 0 bit the signal levels will be low–high (assuming an amplitude physical encoding of the data) – with a low level in the first half of the bit period, and a high level in the second half. For a 1 bit the signal levels will be high–low. This is also known as Manchester II or Biphase-L code.

The second convention is also followed by numerous authors (e.g., [William Stallings](/source/William_Stallings))[7] as well as by [IEEE 802.4](/source/IEEE_802.4) (token bus) and lower speed versions of [IEEE 802.3](/source/IEEE_802.3) (Ethernet) standards. It states that a logic 0 is represented by a high–low signal sequence and a logic 1 is represented by a low–high signal sequence.

If a Manchester encoded signal is inverted in communication, it is transformed from one convention to the other. This ambiguity can be overcome by using [differential Manchester encoding](/source/Differential_Manchester_encoding).

### Decoding

The existence of guaranteed transitions allows the signal to be self-clocking, and also allows the receiver to align correctly; the receiver can identify if it is misaligned by half a bit period, as there will no longer always be a transition during each bit period. The price of these benefits is a doubling of the bandwidth requirement compared to simpler [NRZ](/source/Non-return-to-zero) coding schemes.

### Encoding

Encoding data using exclusive or logic (802.3 convention)[8] Original data Clock Manchester value 0 XOR ⊕ 0 = 0 1 1 1 0 1 1 0

Encoding conventions are as follows:

- Each bit is transmitted in a fixed time (the period).

- A 0 is expressed by a low-to-high transition, a 1 by a high-to-low transition (according to G. E. Thomas's convention – in the IEEE 802.3 convention, the reverse is true).[9]

- The transitions which signify 0 or 1 occur at the midpoint of a period.

- Transitions at the start of a period are overhead and don't signify data.

## See also

- [Coded mark inversion](/source/Coded_mark_inversion)

- [Differential Manchester encoding](/source/Differential_Manchester_encoding)

- [Binary offset carrier modulation](/source/Binary_offset_carrier_modulation)

## References

1. **[^](#cite_ref-1)** Savard, John J. G. (2018) [2006]. ["Digital Magnetic Tape Recording"](https://web.archive.org/web/20180702234956/http://www.quadibloc.com/comp/tapeint.htm). *quadibloc*. Archived from [the original](http://www.quadibloc.com/comp/tapeint.htm) on 2 July 2018. Retrieved 16 July 2018.

1. **[^](#cite_ref-2)** Hughes, Mark (2 July 2017). ["Communicating Over Billions of Miles: Long Distance Communications in the Voyager Spacecraft"](https://www.allaboutcircuits.com/news/voyager-mission-anniversary-celebration-long-distance-communications/). *All About Circuits*. Retrieved 27 September 2024.

1. **[^](#cite_ref-3)** ["Milestones:Manchester Code, 1948–1949"](https://ethw.org/Milestones:Manchester_Code,_1948%E2%80%931949).

1. ^ [***a***](#cite_ref-:0_4-0) [***b***](#cite_ref-:0_4-1) Oed, Richard (22 April 2022). ["Old, but Still Useful: The Manchester Code"](https://www.digikey.com/en/blog/old-but-still-useful-the-manchester-code). *[DigiKey](/source/DigiKey)*. [Archived](https://web.archive.org/web/20220822210500/https://www.digikey.com/en/blog/old-but-still-useful-the-manchester-code) from the original on 22 August 2022. Retrieved 2 February 2023.

1. **[^](#cite_ref-5)** [*Ethernet Technologies*](https://web.archive.org/web/20181228005303/http://docwiki.cisco.com/wiki/Ethernet_Technologies), [Cisco Systems](/source/Cisco_Systems), archived from [the original](http://docwiki.cisco.com/wiki/Ethernet_Technologies) on 28 December 2018, retrieved 12 September 2017, Manchester encoding introduces some difficult frequency-related problems that make it unsuitable for use at higher data rates.

1. **[^](#cite_ref-tanenbaum_6-0)** [Tanenbaum, Andrew S.](/source/Andrew_S._Tanenbaum) (2002). [*Computer Networks*](https://archive.org/details/computernetworks00tane_2/page/274) (4th ed.). [Prentice Hall](/source/Prentice_Hall). pp. [274–275](https://archive.org/details/computernetworks00tane_2/page/274). [ISBN](/source/ISBN_(identifier)) [0-13-066102-3](https://en.wikipedia.org/wiki/Special:BookSources/0-13-066102-3).

1. **[^](#cite_ref-stallings_7-0)** [Stallings, William](/source/William_Stallings) (2004). [*Data and Computer Communications*](https://archive.org/details/datacomputercomm00stal_1/page/137) (7th ed.). [Prentice Hall](/source/Prentice_Hall). pp. [137–138](https://archive.org/details/datacomputercomm00stal_1/page/137). [ISBN](/source/ISBN_(identifier)) [0-13-100681-9](https://en.wikipedia.org/wiki/Special:BookSources/0-13-100681-9).

1. **[^](#cite_ref-8)** [*Manchester Data Encoding for Radio Communications*](https://www.maximintegrated.com/en/app-notes/index.mvp/id/3435), retrieved 28 May 2018

1. **[^](#cite_ref-Manchesterencoding_9-0)** Forster, R. (2000). "Manchester encoding: Opposing definitions resolved". *Engineering Science & Education Journal*. **9** (6): 278–280. [doi](/source/Doi_(identifier)):[10.1049/esej:20000609](https://doi.org/10.1049%2Fesej%3A20000609) (inactive 12 July 2025).{{[cite journal](https://en.wikipedia.org/wiki/Template:Cite_journal)}}: CS1 maint: DOI inactive as of July 2025 ([link](https://en.wikipedia.org/wiki/Category:CS1_maint:_DOI_inactive_as_of_July_2025))

This article incorporates [public domain material](/source/Copyright_status_of_works_by_the_federal_government_of_the_United_States) from [*Federal Standard 1037C*](https://web.archive.org/web/20220122224547/https://www.its.bldrdoc.gov/fs-1037/fs-1037c.htm). [General Services Administration](/source/General_Services_Administration). Archived from [the original](https://www.its.bldrdoc.gov/fs-1037/fs-1037c.htm) on 22 January 2022. (in support of [MIL-STD-188](/source/MIL-STD-188)).

v t e Line coding (digital baseband transmission) Main articles Unipolar encoding Bipolar encoding On–off keying Mark and space Basic line codes Return to zero (RZ) Non-return-to-zero, level (NRZ/NRZ-L) Non-return-to-zero, inverted (NRZ-I) Non-return-to-zero, space (NRZ-S) Manchester Differential Manchester/biphase (Bi-φ) Extended line codes Conditioned diphase 4B3T 4B5B 2B1Q Alternate mark inversion Modified AMI code Coded mark inversion MLT-3 encoding Hybrid ternary code 6b/8b encoding 8b/10b encoding 64b/66b encoding Eight-to-fourteen modulation Delay/Miller encoding TC-PAM Optical line codes Carrier-Suppressed Return-to-Zero Alternate-Phase Return-to-Zero See also: Baseband Baud Bit rate Digital signal Digital transmission Ethernet physical layer Pulse modulation methods Pulse-amplitude modulation (PAM) Pulse-code modulation (PCM) Serial communication Category:Line codes

---
Adapted from the Wikipedia article [Manchester code](https://en.wikipedia.org/wiki/Manchester_code) by Wikipedia contributors ([contributor history](https://en.wikipedia.org/wiki/Manchester_code?action=history)). Available under [Creative Commons Attribution-ShareAlike 4.0 International](https://creativecommons.org/licenses/by-sa/4.0/). Changes may have been made.
