Running disparity (RD or rd) is the difference between the number of logic 1 bits and logic 0 bits between the start of a data sequence and a particular instant in time during its transmission. The RD for a character is the difference between the number of 1 bits and 0 bits in that character. If there are more 1 bits than 0 bits, the RD is defined as positive. If there are fewer 1 bits than 0 bits, the RD is defined as negative. If the number of 1 bits and 0 bits is the same, the RD is defined as neutral or zero.
A logic 1 to logic 0 bit ratio of 1:1 represents RD = 0. If the ratio is greater than 1:1, it indicates positive disparity (RD > 0), and if it is less than 1:1, it indicates negative disparity (RD < 0). Specific RD values can be quantified as integers; for example, RD = 0, RD = +3, RD = -2.
In some communication and data storage systems, such as Gigabit Ethernet and storage area network (SAN) technology, it is critical that the RD be maintained as near to neutral as possible. This means that the the ratio of logic 1 bits to logic 0 bits over time should remain close to 1:1. Any large set of characters with negative disparity should ideally be followed and preceded by a character set of the same size that exhibits positive disparity. In no case should the RD, over time, increase positively or negatively without limit.
The RD count of a received signal can be used for error detection. The RD value as counted up at the destination can be compared with RD numbers transmitted with the data at intervals. Any difference, and in particular an accumulating disparity, indicates errors.