PRELIMINARY
CYP15G0401RB
Document #: 38-02111 Rev. ** Page 28 of 35
mitter calculates a new value for its running disparity based on
the contents of the transmitted character. Special Character
codes C1.7 and C2.7 can be used to force the transmission of
a specific Special Character with a specific running disparity
as required for some special sequences in X3.230.
After powering on, the Receiver may assume either a positive
or negative value for its initial running disparity. Upon reception
of any Transmission Character, the Receiver decides whether
the Transmission Character is valid or invalid according to the
following rules and tables and calculates a new value for its
Running Disparity based on the contents of the received
character.
The following rules for running disparity are used to calculate
the new running-disparity value for Transmission Characters
that have been transmitted and received.
Running disparity for a Transmission Character is calculated
from sub-blocks, where the first six bits (abcdei) form one
sub-block and the second four bits (fghj) form the other
sub-block. Running disparity at the beginning of the six-bit
sub-block is the running disparity at the end of the previous
Transmission Character. Running disparity at the beginning of
the four-bit sub-block is the running disparity at the end of the
six-bit sub-block. Running disparity at the end of the Trans-
mission Character is the running disparity at the end of the
four-bit sub-block.
Running disparity for the sub-blocks is calculated as follows:
1. Running disparity at the end of any sub-block is positive if
the sub-block contains more ones than zeros. It is also pos-
itive at the end of the six-bit sub-block if the six-bit sub-block
is 000111, and it is positive at the end of the four-bit
sub-block if the four-bit sub-block is 0011.
2. Running disparity at the end of any sub-block is negative if
the sub-block contains more zeros than ones. It is also
negative at the end of the six-bit sub-block if the six-bit
sub-block is 111000, and it is negative at the end of the
six-bit sub-block if the four-bit sub-block is 1100.
3. Otherwise, running disparity at the end of the sub-block is
the same as at the beginning of the sub-block.
Use of the Tables for Generating Transmission Characters
The appropriate entry in
Table 14
for the Valid Data byte or
Table 15
for Special Character byte identify which Trans-
mission Character is to be generated. The current value of the
Transmitter’s running disparity is used to select the Trans-
mission Character from its corresponding column. For each
Transmission Character transmitted, a new value of the
running disparity is calculated. This new value is used as the
Transmitter’s current running disparity for the next Valid Data
byte or Special Character byte to be encoded and transmitted.
Table 12
shows naming notations and examples of valid trans-
mission characters.
Use of the Tables for Checking the Validity of Received
Transmission Characters
The column corresponding to the current value of the
Receiver’s running disparity is searched for the received
Transmission Character. If the received Transmission
Character is found in the proper column, then the Trans-
mission Character is valid and the associated Data byte or
Special Character code is determined (decoded). If the
received Transmission Character is not found in that column,
then the Transmission Character is invalid. This is called a
code violation. Independent of the Transmission Character’s
validity, the received Transmission Character is used to
calculate a new value of running disparity. The new value is
used as the Receiver’s current running disparity for the next
received Transmission Character.
Detection of a code violation does not necessarily show that
the Transmission Character in which the code violation was
detected is in error. Code violations may result from a prior
error that altered the running disparity of the bit stream which
did not result in a detectable error at the Transmission
Character in which the error occurred.
Table 12
shows an
example of this behavior.
Table 12.Valid Transmission Characters
Data
Byte Name
D
IN
or Q
OUT
Hex Value765 43210
D0.0 000 00000 00
D1.0 000 00001 01
D2.0 000 00010 02
.
.
.
.
.
.
.
.
D5.2 010 00101 45
.
.
.
.
.
.
.
.
D30.7 111 11110 FE
D31.7 111 11111 FF
Table 13.Code Violations Resulting from Prior Errors
RD Character RD Character RD Character RD
Transmitted data character – D21.1 – D10.2 – D23.5 +
Transmitted bit stream – 101010 1001 – 010101 0101 – 111010 1010 +
Bit stream after error – 101010 1011 + 010101 0101 + 111010 1010 +
Decoded data character – D21.0 + D10.2 + Code Violation +
[+] Feedback