8b10b Encoder/Decoder
MegaCore Function
(ED8B10B)
November 2001; ver. 1.02
Data Sheet
Encoders and decoders are used for physical layer coding for Gigabit
Ethernet, Fibre Channel, and other applications. The 8b/10b encoder
takes byte inputs, and generates a direct current (DC) balanced stream
(equal number of 1s and 0s) with a maximum run length of 5. Some of the
individual 10-bit codes will have an equal number of 1s and 0s, while
others will have either four 1s and six 0s, or, six 1s and four 0s. In the latter
case, the disparity between 1s and 0s is used as an input to the next 10-bit
code generation, so that the disparity can be reversed, and maintain an
overall balanced stream. For this reason, some 8-bit inputs have two valid
10-bit codes, depending on the input disparity.
Introduction
The Altera® 8b10b Encoder/Decoder MegaCore® Function (ED8B10B) is a
compact, high performance core capable of encoding and decoding at
Gigabit Ethernet rates (125 MHz: 1 Gbps). The ED8B10B is optimized for
the APEXTM 20K, FLEX 10K®, and MercuryTM devices.
I
I
I
Look-up table (LUT)-based implementation of encoder
Industry compatible special character coding
Complies with all applicable standards, including:
Features
–
Institute of Electrical and Electronics Engineers, IEEE 802.3z,
Media Access Control (MAC) Parameters, Physical Layer, Repeater
and Management Parameters for 1000 Mb/s Operation, 1998,
paragraphs 36.2.4.1 to 36.2.4.6.
I
I
Quartus® II software, and OpenCore® feature allow place-and-route
and static timing analysis of designs prior to licensing
Secure register transfer level (RTL) simulation models allow
simulation with user design in third-party simulators
The ED8B10B can encode one 8-bit byte of data into a 10-bit transmission
code, and decode a 10-bit code into one 8-bit byte of data. Figure 1
illustrates the bidirectional conversion process.
Functional
Description
The eight input bits are named A, B, C, D, E, F, G, H. Bit Ais the least
significant bit (LSB), and bit His the most significant bit (MSB). They are
split into two groups: The five-bit group A, B, C, D, E, and the three-bit
group F, G, H.
The coded bits are named a, b, c, d, e, i, f, g, h, j(the order is not
alphabetical). These bits are also split into two groups: the six-bit group a,
b, c, d, e, i, and the four-bit group f, g, h, j.
Altera Corporation
1
A-DS-IPED8B10B-1.02