CY7B92
3
CY7B93
3
Document #: 38-02017 Rev. *C Page 16 of 30
To clarify this correspondence, the following example shows
the conversion from an FC-2 Valid Data Byte to a Transmission
Character (using 8B/10B Transmission Code notation)
FC-2 45
Bits: 7654
3210
0100 0101
Converted to 8B/10B notation (note carefully that the order of
bits is reversed):
Data Byte Name D5.2
Bits:ABCDE
FGH
10100 010
Translated to a transmission Character in the 8B/10B Trans-
mission Code:
Bits: abcdei
fghj
1010010101
Each valid Transmission Character of the 8B/10B Trans-
mission Code has been given a name using the following
convention: cxx.y, where c is used to show whether the Trans-
mission Character is a Data Character (c is set to D, and the
SC/D
pin is LOW) or a Special Character (c is set to K, and the
SC/D
pin is HIGH). When c is set to D, xx is the decimal value of the
binary number composed of the bits E, D, C, B, and A in that order,
and the y is the decimal value of the binary number composed of
the bits H, G, and F in that order. When c is set to K, xx and y are
derived by comparing the encoded bit patterns of the Special
Character to those patterns derived from encoded Valid Data bytes
and selecting the names of the patterns most similar to the encoded
bit patterns of the Special Character.
Under the above conventions, the Transmission Character
used for the examples above, is referred to by the name D5.2.
The Special Character K29.7 is so named because the first six
bits (abcdei) of this character make up a bit pattern similar to
that resulting from the encoding of the unencoded 11101
pattern (29), and because the second four bits (fghj) make up
a bit pattern similar to that resulting from the encoding of the
unencoded 111 pattern (7).
Note: This definition of the 10-bit Transmission Code is based
on (and is in basic agreement with) the following references,
which describe the same 10-bit transmission code.
A.X. Widmer and P.A. Franaszek. “A DC-Balanced, Parti-
tioned-Block, 8B/10B Transmission Code” IBM Journal of
Research and Development, 27, No. 5: 440-451 (September,
1983).
U.S. Patent 4, 486, 739. Peter A. Franaszek and Albert X.
Widmer. “Byte-Oriented DC Balanced (0.4) 8B/10B Parti-
tioned Block Transmission Code” (December 4, 1984).
Fibre Channel Physical and Signaling Interface (dpANS
X3.230-199X ANSI FC-PH Standard).
IBM Enterprise Systems Architecture/390 ESCON I/O
Interface (document number SA22-7202).
8B/10B Transmission Code
The following information describes how the tables shall be
used for both generating valid Transmission Characters
(encoding) and checking the validity of received Transmission
Characters (decoding). It also specifies the ordering rules to
be followed when transmitting the bits within a character and
the characters within the higher-level constructs specified by
the standard.
Transmission Order
Within the definition of the 8B/10B Transmission Code, the bit
positions of the Transmission Characters are labeled a, b, c,
d, e, i, f, g, h, j. Bit “a” shall be transmitted first followed by bits
b, c, d, e, i, f, g, h, and j in that order. (Note that bit i shall be
transmitted between bit e and bit f, rather than in alphabetical
order.)
Valid and Invalid Transmission Characters
The following tables define the valid Data Characters and valid
Special Characters (K characters), respectively. The tables
are used for both generating valid Transmission Characters
(encoding) and checking the validity of received Transmission
Characters (decoding). In the tables, each Valid-Data-byte or
Special-Character-code entry has two columns that represent
two (not necessarily different) Transmission Characters. The
two columns correspond to the current value of the running
disparity (“Current RD-” or “Current RD+”). Running disparity
is a binary parameter with either the value negative (-) or the
value positive (+).
After powering on, the Transmitter may assume either a
positive or negative value for its initial running disparity. Upon
transmission of any Transmission Character, the transmitter
will select the proper version of the Transmission Character
based on the current running disparity value, and the Trans-
mitter shall calculate 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 trans-
mission 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 shall decide
whether the Transmission Character is valid or invalid
according to the following rules and tables and shall calculate
a new value for its Running Disparity based on the contents of
the received character.
The following rules for running disparity shall be 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 shall be calcu-
lated 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 6-bit
sub-block is the running disparity at the end of the previous
Transmission Character. Running disparity at the beginning of
the 4-bit sub-block is the running disparity at the end of the
6-bit sub-block. Running disparity at the end of the Trans-
mission Character is the running disparity at the end of the
4-bit sub-block.
Running disparity for the sub-blocks shall be 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 6-bit sub-block if the 6-bit sub-block
is 000111, and it is positive at the end of the 4-bit sub-block
if the 4-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
CY7B92
3
CY7B93
3
Document #: 38-02017 Rev. *C Page 17 of 30
negative at the end of the 6-bit sub-block if the 6-bit
sub-block is 111000, and it is negative at the end of the 4-bit
sub-block if the 4-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 shall be found for the Valid
Data byte or the Special Character byte for which a Trans-
mission Character is to be generated (encoded). The current
value of the Transmitter’s running disparity shall be used to
select the Transmission Character from its corresponding
column. For each Transmission Character transmitted, a new
value of the running disparity shall be calculated. This new
value shall be used as the Transmitter’s current running
disparity for the next Valid Data byte or Special Character byte
to be encoded and transmitted. Table 1 shows naming notations
and examples of valid transmission 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 shall be 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 shall be used to
calculate a new value of running disparity. The new value shall
be 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 2 shows an
example of this behavior.
Table 1. 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 000101 45
.
.
.
.
.
.
.
.
D30.7 111 11110 FE
D31.7 111 11111 FF
Table 2. 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 +
CY7B92
3
CY7B93
3
Document #: 38-02017 Rev. *C Page 18 of 30
Valid Data Characters (SC/D = LOW)
Data
Byte
Name
Bits Current RD Current RD+
HGF
EDC-
BA abcdei fghj abcdei fghj
D0.0 000 00000 100111 0100 011000 1011
D1.0 000 00001 011101 0100 100010 1011
D2.0 000 00010 101101 0100 010010 1011
D3.0 000 00011 110001 1011 110001 0100
D4.0 000 00100 110101 0100 001010 1011
D5.0 000 00101 101001 1011 101001 0100
D6.0 000 00110 011001 1011 011001 0100
D7.0 000 00111 111000 1011 000111 0100
D8.0 000 01000 111001 0100 000110 1011
D9.0 000 01001 100101 1011 100101 0100
D10.0 000 01010 010101 1011 010101 0100
D11.0 000 01011 110100 1011 110100 0100
D12.0 000 01100 001101 1011 001101 0100
D13.0 000 01101 101100 1011 101100 0100
D14.0 000 01110 011100 1011 011100 0100
D15.0 000 01111 010111 0100 101000 1011
D16.0 000 10000 011011 0100 100100 1011
D17.0 000 10001 100011 1011 100011 0100
D18.0 000 10010 010011 1011 010011 0100
D19.0 000 10011 110010 1011 110010 0100
D20.0 000 10100 001011 1011 001011 0100
D21.0 000 10101 101010 1011 101010 0100
D22.0 000 10110 011010 1011 011010 0100
D23.0 000 10111 111010 0100 000101 1011
D24.0 000 11000 110011 0100 001100 1011
D25.0 000 11001 100110 1011 100110 0100
D26.0 000 11010 010110 1011 010110 0100
D27.0 000 11011 110110 0100 001001 1011
D28.0 000 11100 001110 1011 001110 0100
D29.0 000 11101 101110 0100 010001 1011
D30.0 000 11110 011110 0100 100001 1011
D31.0 000 11111 101011 0100 010100 1011
D0.1 001 00000 100111 1001 011000 1001
D1.1 001 00001 011101 1001 100010 1001
D2.1 001 00010 101101 1001 010010 1001
D3.1 001 00011 110001 1001 110001 1001
D4.1 001 00100 110101 1001 001010 1001
D5.1 001 00101 101001 1001 101001 1001
D6.1 001 00110 011001 1001 011001 1001
D7.1 001 00111 111000 1001 000111 1001
D8.1 001 01000 111001 1001 000110 1001
D9.1 001 01001 100101 1001 100101 1001
D10.1 001 01010 010101 1001 010101 1001
D11.1 001 01011 110100 1001 110100 1001
D12.1 001 01100 001101 1001 001101 1001
D13.1 001 01101 101100 1001 101100 1001
D14.1 001 01110 011100 1001 011100 1001
D15.1 001 01111 010111 1001 101000 1001
D16.1 001 10000 011011 1001 100100 1001
D17.1 001 10001 100011 1001 100011 1001
D18.1 001 10010 010011 1001 010011 1001
D19.1 001 10011 110010 1001 110010 1001
D20.1 001 10100 001011 1001 001011 1001
D21.1 001 10101 101010 1001 101010 1001
D22.1 001 10110 011010 1001 011010 1001
D23.1 001 10111 111010 1001 000101 1001
D24.1 001 11000 110011 1001 001100 1001
D25.1 001 11001 100110 1001 100110 1001
D26.1 001 11010 010110 1001 010110 1001
D27.1 001 11011 110110 1001 001001 1001
D28.1 001 11100 001110 1001 001110 1001
D29.1 001 11101 101110 1001 010001 1001
D30.1 001 11110 011110 1001 100001 1001
D31.1 001 11111 101011 1001 010100 1001
D0.2 010 00000 100111 0101 011000 0101
D1.2 010 00001 011101 0101 100010 0101
D2.2 010 00010 101101 0101 010010 0101
D3.2 010 00011 110001 0101 110001 0101
Valid Data Characters (SC/D = LOW) (continued)
Data
Byte
Name
Bits Current RD Current RD+
HGF
EDC-
BA abcdei fghj abcdei fghj

CY7B933-SC

Mfr. #:
Manufacturer:
Cypress Semiconductor
Description:
IC TXRX FIBRE CHAN 28SOIC
Lifecycle:
New from this manufacturer.
Delivery:
DHL FedEx Ups TNT EMS
Payment:
T/T Paypal Visa MoneyGram Western Union

Products related to this Datasheet