English
Language : 

LAN9730 Datasheet, PDF (77/222 Pages) SMSC Corporation – High-Speed Inter-Chip (HSIC) USB 2.0
LAN9730/LAN9730i
4.6.1.1 4B/5B Encoding
The transmit data passes from the MII block to the 4B/5B encoder. This block encodes the data from 4-bit nibbles to 5-
bit symbols (known as code-groups) according to Table 4-54. Each 4-bit data-nibble is mapped to 16 of the 32 possible
code-groups. The remaining 16 code-groups are either used for control information or are not valid.
The first 16 code-groups are referred to by the hexadecimal values of their corresponding data nibbles, 0 through F. The
remaining code-groups are given letter designations with slashes on either side. For example, an IDLE code-group is /
I/, a transmit error code-group is /H/, etc.
The encoding process may be bypassed by clearing bit 6 of register 31. When the encoding is bypassed, the 5th transmit
data bit is equivalent to TX_ER.
TABLE 4-54: 4B/5B CODE TABLE
Code Group
11110
01001
10100
10101
01010
01011
01110
01111
10010
10011
10110
10111
11010
11011
11100
11101
11111
11000
10001
01101
00111
00100
00110
11001
00000
00001
00010
00011
00101
01000
01100
Sym
0
1
2
3
4
5
6
7
8
9
A
B
C
D
E
F
I
J
K
T
R
H
V
V
V
V
V
V
V
V
V
Receiver Interpretation
Transmitter Interpretation
0
0000
DATA
0
0000
DATA
1
0001
1
0001
2
0010
2
0010
3
0011
3
0011
4
0100
5
0101
6
0110
7
0111
8
1000
9
1001
4
0100
5
0101
6
0110
7
0111
8
1000
9
1001
A
1010
A
1010
B
1011
B
1011
C
1100
C
1100
D
1101
E
1110
F
1111
IDLE
First nibble of SSD, translated to “0101”
following IDLE, else RX_ER
D
1101
E
1110
F
1111
Sent after /T/R until TX_EN
Sent for rising TX_EN
Second nibble of SSD, translated to
“0101” following J, else RX_ER
First nibble of ESD, causes de-assertion of
CRS if followed by /R/, else assertion of
RX_ER
Second nibble of ESD, causes deasser-
tion of CRS if following /T/, else assertion
of RX_ER
Transmit Error Symbol
Sent for rising TX_EN
Sent for falling TX_EN
Sent for falling TX_EN
Sent for rising TX_ER
INVALID, RX_ER if during RX_DV
INVALID
INVALID, RX_ER if during RX_DV
INVALID
INVALID, RX_ER if during RX_DV
INVALID
INVALID, RX_ER if during RX_DV
INVALID
INVALID, RX_ER if during RX_DV
INVALID, RX_ER if during RX_DV
INVALID, RX_ER if during RX_DV
INVALID, RX_ER if during RX_DV
INVALID
INVALID
INVALID
INVALID
INVALID, RX_ER if during RX_DV
INVALID
 2012-2015 Microchip Technology Inc.
DS00001946A-page 77