HDB3 Encoding.

HDB3 Encoding

The HDB3 (High-Density Bipolar Order 3) code relies on the transmission of both positive and negative pulses and is the encoding technique used over G.703 E1 networks. With this technique, both timing and data can be transmitted over just two wires in each direction HDB3 is a development of AMI (Alternate Mark Inversion), a line code in which a logical 0 is represented by no change and a logical 1 is represented by pulses of alternating polarity. HDB3 prevents more than four AMI "no change" bits from being sent consecutively. This, in turn, prevents long runs of zeros in the data stream. Without HDB3, the receiving PLL (phase lock loop) circuit would have difficulty maintaining synchronisation.

HDB3 encoding rules.
A sequence of four consecutive zeros in encoded using a special "violation" bit. This bit has the same polarity as the last 1-bit that was sent using the AMI encoding rule. Further refinement is necessary to prevent a DC voltage from being introduced by excessive runs of zeros. THe voliation bit alternates between + and - pulses for every consecutive group of four zeros.

The pattern of bits: " 1 1 0 0 0 0 1 1 "  
encodes to: " + - 0 0 0 0 + - " using AMI,
and becomes: " + - 0 0 0 - + - " using HDB3.