> manchester | 01 10 | line <
// Manchester Encoding - Self-clocking line code for digital transmission
Clock Recovery
Guaranteed transition in each bit period enables clock synchronization.
Error Detection
Missing transitions indicate transmission errors immediately.
No DC Component
Equal high and low periods eliminate DC bias in transmission.
>> technical info
How Manchester Encoding Works:
Manchester encoding represents each bit as a transition within a clock period. In IEEE convention, '0' is encoded as low-to-high (01) and '1' as high-to-low (10). This ensures a transition in every bit period for clock recovery.
Encoding Conventions:
IEEE 802.3 (Ethernet): 0 → 01 (↑ transition) 1 → 10 (↓ transition) Thomas (G.E. Thomas): 0 → 10 (↓ transition) 1 → 01 (↑ transition)
Why Use Manchester:
- >Ethernet networking
- >RFID communication
- >NFC protocols
- >Magnetic stripe cards
- >Infrared remotes
>> frequently asked questions
What is Manchester encoding?
Manchester encoding is a line coding scheme that encodes clock and data signals together. Each bit is represented by a transition in the middle of the bit period, making it self-clocking.
IEEE vs Thomas convention?
IEEE 802.3 (used in Ethernet) encodes 0 as low-to-high transition (01) and 1 as high-to-low (10). Thomas convention is the opposite. Most modern systems use IEEE.
What is differential Manchester?
Differential Manchester encodes data in the presence or absence of transitions at bit boundaries. A '0' has no transition, a '1' has a transition. It's more robust against polarity inversions.
Why does Manchester use twice the bandwidth?
Since each data bit is encoded as two symbols, Manchester requires twice the bandwidth of the original signal. This is the trade-off for self-clocking and error detection capabilities.
曼彻斯特编码(Manchester Encoding)是什么?为什么需要它?
曼彻斯特编码是一种 自同步线性编码(self-clocking line code)。它把每个比特都编码成“位中间一次跳变”:
• IEEE 802.3(以太网)约定:0 → 低到高跳变(01);1 → 高到低跳变(10)。
• Thomas 约定:相反(G.E. Thomas 1949 年论文定义的原始版本)。
为什么需要?普通 NRZ(Non-Return-to-Zero)编码一串 0 或一串 1 时没有跳变,接收方无法从信号本身恢复时钟,必须依赖额外的时钟线或稳定性极高的本振。曼彻斯特编码保证 每个比特中间都有跳变,接收端可以用锁相环(PLL)在数据本身里恢复时钟,节省了一条线。
代价:带宽占用翻倍(每比特 2 个符号,波特率=比特率的 2 倍)。
典型应用:10BASE-T 以太网(10 Mbps)、RFID(ISO 15693)、NFC 的部分模式、红外遥控 RC-5 协议、磁条卡。
曼彻斯特编码 vs 差分曼彻斯特编码(Differential Manchester)?
两者都是自同步编码,但差分版本对极性反转(电缆接反)免疫:
曼彻斯特编码:每个比特的值由跳变方向决定(上升沿=0,下降沿=1)。如果电缆两端接反,0 和 1 就全错了。
差分曼彻斯特:
• 位边界处:有跳变 = 0;无跳变 = 1(或相反约定)。
• 位中间:始终有跳变(用于时钟恢复)。
• 优势:接反电缆两端不会出错,数据不变。
• 应用:令牌环网(Token Ring, IEEE 802.5)、IEEE 802.15.4(ZigBee 物理层的部分)。
现代千兆以太网(1000BASE-T)已改用 PAM-5 + 4D 八点编码,不再使用曼彻斯特,因为带宽效率需求提升。10BASE-T 仍保留曼彻斯特编码。
How do I decode a Manchester signal from a logic analyzer capture?
If you've captured a suspicious 01 01 10 01 10 10 01 10... pattern in a logic analyzer, you're probably looking at Manchester. To decode:
1. Find the clock period — measure the shortest pulse width. Manchester pulses are either 1 full bit time or ½ bit time. The shortest = ½ the clock period.
2. Sample the middle of each half-period. A low-to-high transition = data bit 0 (IEEE) or 1 (Thomas). High-to-low = the opposite.
3. Drop the pairs: 01 → 0, 10 → 1 (IEEE 802.3 convention).
4. Group bits into bytes. For 10BASE-T Ethernet, the preamble is 10101010... followed by start-of-frame 10101011.
5. Check alignment: if you get gibberish, shift by half a bit and retry — you may have captured the wrong half.
Is Manchester encoding still used today?
Yes, in niches where simplicity beats bandwidth efficiency:
• 10BASE-T Ethernet: still widely deployed on cheap IoT devices and industrial controllers. 100BASE-TX and above use more efficient codes.
• RFID: many LF (125 kHz) and HF (13.56 MHz) tags use Manchester to transmit back to the reader.
• NFC Type A modulation (ISO/IEC 14443 Type A): Manchester at 106 kbps tag-to-reader.
• IR remote controls: RC-5 and some RC-6 codes use Manchester.
• DCC model railway: Digital Command Control uses Manchester-like pulse-width encoding.
• CAN bus uses NRZ with bit-stuffing, not Manchester — easy confusion point.
For new designs needing self-clocking, look at 8b/10b (PCIe, SATA, USB 3), 64b/66b (10GbE+), or 128b/130b — all give better bandwidth efficiency than Manchester's 50%.