
CYP15G0101DXB
CYV15G0101DXB
Document #: 38-02031 Rev. *I
Page 32 of 39
based on the current running disparity value, and the Trans-
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 (Transmitter’s running disparity)
and that have been received (Receiver’s running disparity).
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 neg-
ative 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
four-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 the table is found for the Valid Data
byte or the Special Character byte for which a Transmission
Character is to be generated (encoded). The current value of
the Transmitter’s running disparity is used to select the Trans-
mission Character from its corresponding column. For each
Table 19. Code Violations Resulting from Prior Errors
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 18
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 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 19
shows an
example of this behavior.
Table 18. Valid Transmission Characters
Data
Byte Name
D0.0
D
IN
or Q
OUT
765
000
Hex Value
00
43210
00000
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
RD
–
–
–
–
Character
D21.1
101010 1001
101010 1011
D21.0
RD
–
–
+
+
Character
D10.2
010101 0101
010101 0101
D10.2
RD
–
–
+
+
Character
D23.5
111010 1010
111010 1010
Code Violation
RD
+
+
+
+
Transmitted data character
Transmitted bit stream
Bit stream after error
Decoded data character