Non-Return to Zero (NRZ) Encoding

Non-return to zero encoding is commonly used in slow speed communications interfaces for both synchronous and asynchronous transmission. Using NRZ, a logic 1 bit is sent as a high value and a logic 0 bit is sent as a low value (the line driver chip used to connect the cable may subsequently invert these signals).

A problem arises when using NRZ to encode a synchronous link which may have long runs of consecutive bits with the same value. The figure below illustrates the problem that would arise if NRZ encoding were used with a DPLL recovered clock signal. In Ethernet for example, there is no control over the number of 1's or 0's which may sent consecutively. There could potentially be thousands of 1's or 0's in sequence. If the encoded data contains long 'runs' of logic 1's or 0's, this does not result in any bit transitions. The lack of transitions prevents the receiver DPLL from reliably regenerating the clock making it impossible to detect the boundaries of the received bits at the receiver. This is the reason why Manchester coding is used in Ethernet LANs.

A long run of bits with the same value results in no transitions on the cable when NRZ encoding is used

Gorry Fairhurst - Date: 01/10/2001 EG3557