Aurora 8b10b Protocol Spec sp002
Aurora 8b10b Protocol Spec sp002
Aurora 8b10b Protocol Spec sp002
Protocol Specification
R
R
Xilinx is disclosing to you this Specification (hereinafter "the Specification") for use in the development of designs in connection with
semiconductor devices. Xilinx expressly disclaims any liability arising out of your use of the Specification. Xilinx does not convey any license
under its patents, copyrights, or any rights of others in connection with the Specification. You are responsible for obtaining any rights you
may require for your use or implementation of the Specification. Xilinx reserves the right to make changes, at any time, to the Specification
without notice and at the sole discretion of Xilinx. Xilinx assumes no obligation to correct any errors contained in the Specification or to
advise you of any corrections or updates. Xilinx expressly disclaims any liability in connection with technical support or assistance that may
be provided to you in connection with the Specification.
THE SPECIFICATION IS DISCLOSED TO YOU "AS-IS" WITH NO WARRANTY OF ANY KIND. YOU BEAR THE ENTIRE RISK AS TO ITS
IMPLEMENTATION AND USE. YOU ACKNOWLEDGE AND AGREE THAT YOU HAVE NOT RELIED ON ANY ORAL OR WRITTEN
INFORMATION OR ADVICE, WHETHER GIVEN BY XILINX, ITS EMPLOYEES OR CONTRACTORS. XILINX MAKES NO OTHER
WARRANTIES, WHETHER EXPRESS, IMPLIED, OR STATUTORY, REGARDING THE SPECIFICATION, INCLUDING ANY
WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NONINFRINGEMENT OF THIRD-PARTY
RIGHTS.
IN NO EVENT WILL XILINX BE LIABLE FOR ANY CONSEQUENTIAL, INDIRECT, EXEMPLARY, SPECIAL, OR INCIDENTAL DAMAGES,
INCLUDING ANY LOSS OF DATA OR LOST PROFITS, ARISING FROM OR RELATING TO YOUR USE OF THE SPECIFICATION, EVEN
IF YOU HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
© 2002-2009 Xilinx, Inc. XILINX, the Xilinx logo, Virtex, Spartan, ISE, and other designated brands included herein are trademarks of Xilinx
in the United States and other countries. All other trademarks are the property of their respective owners.
Revision History
The following table shows the revision history for this document.
Aurora 8B/10B Protocol Specification www.xilinx.com SP002 (v2.1) June 24, 2009
Table of Contents
Revision History . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Appendix C: References
Glossary. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
Preface
Conventions
This document uses the following conventions.
Typographical
The following typographical conventions are used in this document:
Online Document
The following conventions are used in this document:
Numerical
Convention Meaning or Use Example
n A decimal value
Used to express a numerical
[n:m]
range from n to m
x Unknown value
z High impedance
Values of Literals
Literals are represented by specifying three of their properties as listed and shown in
Figure P-1 and in Table P-1 and Table P-2, page 7:
1. Width in bits
2. Radix (Base)
3. Value
X-Ref Target - Figure P-1
Conventions
All values are extended with zero except those with x or z in the most significant place;
they extend with x or z respectively. A list of examples is shown in Table P-2:
States
1. A state is represented by a rectangle.
2. The name of the state is indicated in bold.
State Transitions
3. State transition is indicated by an arrow annotated in italics.
Output Types
Outputs are divided into three classes as shown in the examples below.
4. Asserting control signals:
♦ go = 1
♦ link reset = 1
5. Register initialization:
♦ XYZ Register = 78
♦ New Counter = 0
♦ xmit = /SP/ (an ordered set)
6. Incrementing or decrementing a register:
♦ XYZ Register = XYZ Register + 1
♦ New Counter = New Counter – 6
X-Ref Target - Figure P-2
2 reset
State ABC 0
1
5 - xmit = /SP/
- New Counter = 0
State ABC 1
6
- New Counter = New Counter + 1
New Counter ≠ 3
- Link Reset = 1
4
New Counter = 3 3 SP000_PF_02_031408
go = 1
Section 1
1.2 Scope
This section outlines what this specification does and does not define.
The Aurora 8B/10B Protocol Specification defines the following:
• Physical layer interface: This includes the electrical levels, the clock encoding, and
symbol coding.
• Initialization and error handling: This defines the steps required to prepare channel
partners for communication across single lane and multi-lane channels. It also
describes how the channel partners should behave in the presence of bit errors in the
channel.
• Data striping: This describes how data is mapped across a channel of multiple serial
lanes.
• Link layer: This describes how the beginning and end of user protocol data units (user
PDUs) are marked during transmission. This also describes how data pauses may be
inserted in data during transmission and how differences in clock rates between the
transmitter and receiver are managed.
• Flow control: the Aurora 8B/10B protocol defines a link layer flow control mechanism
and an expedited mechanism for forwarding higher layer user flow control messages.
The Aurora 8B/10B protocol does not define the following; it is assumed that these features
will be handled by higher-level protocols:
• Error detection and recovery: the Aurora 8B/10B protocol does not define a
mechanism for detecting errors in user PDUs, or mechanisms for recovering from
them beyond that provided by the 8B/10B encoding.
• Data switching: the Aurora 8B/10B protocol does not define an addressing scheme,
therefore cannot support link layer multiplexing or switching.
1.3 Overview
The Aurora 8B/10B protocol describes the transfer of user data across an Aurora 8B/10B
channel. An Aurora 8B/10B channel consists of one or more Aurora 8B/10B lanes. Each
Aurora 8B/10B lane is a full-duplex serial data connection. The devices that communicate
across the channel are called channel partners. Figure 1-1 illustrates this relationship
Aurora Aurora
8B/10B 8B/10B
Lane 1 Channel
User User
Interface Aurora Aurora Interface
User User
8B/10B 8B/10B
Application Application
Interface Interface
Aurora
8B/10B
Lane N
The Aurora 8B/10B protocol interfaces transfer data and control to and from user
applications by way of the user interface. The user interface is not defined in this
specification.
Data flow consists of the transfer of user PDUs and user flow control messages between
the user application and the Aurora 8B/10B interface, and the transfer of channel PDUs,
and flow control PDUs across the Aurora 8B/10B channel. User PDUs can be of any length,
but their format is not defined in this document. The format of the two types of flow
control PDUs are defined in this document.
Section 2
2.2.1 Symbol-Pairs
The minimum unit of information that is transferred across an Aurora 8B/10B channel is
two symbols, called a symbol-pair. The information on an Aurora 8B/10B channel (or lane)
always comprises multiple symbol-pairs.
• User Flow Control Flow control messages generated by, and interpreted by user
PDUs: applications, and encapsulated for transmission into user flow
control PDUs. These are described in Section 3.1.5 “User Flow
Control PDU Format,” page 20.
• Channel PDUs: User PDUs encapsulated for transmission over the Aurora
8B/10B channel. These are described in Section 2.2.4 “User
PDU Transmission Procedures,” page 13.
• Idle Sequences: Sequences of control symbols that are transmitted whenever
there is no data to send. Idle sequences are described in
Section 5.4.8 “Idle Sequence,” page 34.
In the event that several of the processes that generate these data types are prepared to
transmit data at the same time, they are prioritized as shown in Table 2-1.
Table 2-1: Transmission Priorities
Data Type Priority
Clock Compensation Sequences Highest
Initialization Sequences
Native Flow Control PDUs
User Flow Control PDUs
Channel PDUs
Idle Sequences Lowest
N Octets
User PDU
Padding
N Octets 1 Octet
User PDU Pad
8B/10B Encoding
1 Symbol Pair N Symbols 1 Symbol 1 Symbol Pair
2.2.4.1 Padding
The Aurora 8B/10B channel requires that all transmissions consist of an even number of
symbols. To meet this requirement, all user PDUs that contain an odd number of octets
must be padded with a single octet. This pad octet has a value of 0x9C and immediately
follows the user PDU.
/SCP/ User PDU Embedded Idles User PDU cont. /P/ /ECP/
8B/10B Decoding
2 Octets A Octets M Octets B Octets 1 Octet 2 Octets
SCP User PDU Embedded Idles User PDU cont. Pad ECP
Pad Stripping
N Octets
User PDU
Where: A + B = N
N is an odd number
M is an even number SP002_02_03_101703
2.2.5.1 Deserialization
The serial data stream is received in differential NRZ format. The receive logic deserializes
this data into 10-bit data and control symbols. The details of this process are described in
Section 5.4.5 “Transmission Order,” page 32.
Symbol alignment within the stream is established during the lane initialization procedure
described in Section 4.2.1 “8B/10B Lane Initialization,” page 22 and is not performed
again during normal channel operation.
Section 3
Flow Control
3.1 Overview
This chapter describes the optional flow control mechanisms supported by the Aurora
8B/10B protocol. These mechanisms provide low-latency flow control to prevent data loss
due to differences between the rate at which data is sourced and sunk between channel
partners. Latency is minimized because flow control PDUs can be embedded within channel
PDUs (see Section 2.2.3 “Transmission Scheduling,” page 11).
The Aurora 8B/10B protocol supports the following two flow control mechanisms:
• Native Flow Control: This is a link-layer flow control mechanism. Native flow control
PDUs are generated by, and interpreted by the Aurora 8B/10B
interface.
• User Flow Control: This mechanism can be used to implement user-defined flow
control schemes at any layer. User flow control messages are
generated by, and interpreted by the user application. The
Aurora 8B/10B interface encapsulates these messages into user
flow control PDUs, and provides a low latency mechanism for
their transport across the channel.
Figure 3-1, page 18 illustrates how these flow control schemes interrelate.
Native flow control PDUs are typically generated when elasticity storage at the receiver side
is being depleted. Note that these PDUs must be generated early enough that the latency
between the time that they are issued and when traffic stops does not result in an overflow
of elasticity storage.
User flow control messages are forwarded from one user application to the other through
the Aurora 8B/10B channel and are not interpreted by either Aurora 8B/10B interface.
Some things to note about the flow control mechanisms:
• Assertion of native flow control does not block the forwarding of user flow control
PDUs
• User flow control PDUs, once their transmission has started, cannot be interrupted by
any other sequence
Overview
Reserved UG002_06_02_020603
Reserved UG002_06_03_101403
001 4 octets
010 6 octets
011 8 octets
100 10 octets
101 12 octets
110 14 octets
111 16 octets
Section 4
• Lane Initialization: This procedure is performed individually on each lane to activate the
link and align the received data to the proper boundaries.
• Channel Bonding: This procedure bonds the individual lanes into a single data channel.
If the function implemented only uses a single link, channel bonding
is not required and will be bypassed. Channel bonding eliminates
skew introduced from various sources including the trace lengths,
connectors and IC variations.
• Channel Verification: This procedure performs any alignment needed to map received data
to the user interface and verifies the ability of the channel to transfer
valid data.
Figure 4-1 illustrates how these procedures interrelate. During channel verification, all lanes
must become ready to receive data across the channel. When an Aurora 8B/10B interface
completes channel verification, it can immediately start to transmit data.
X-Ref Target - Figure 4-1
Lane Initialization
Initialize Lane Hardware
and Symbol Alignment
Single-Lane Multi-Lane
Channel Channel Channel Bonding
Channel Timeout
Bonding
Verification
Timeout Bond Lanes
Channel
Verification
Check Channel Integrity
and Data Alignment
Verification Complete
Channel Ready
SP006_04_01_060607
RESET0
- xmit = /SP/
- Reset internal state
- Lane Reset Counter = 0
RESET1
- xmit = /SP/
- Reset internal state Lane Reset Counter < N1
- Lane Reset Counter = Lane Reset Counter + 1
INIT1A
Else - xmit = /SP/ RX = [valid code group
- K Counter = K Counter & (not /K/)]
- Enable comma alignment = 1
INIT2
- xmit = /SP/ RX = valid code group
RX =
- RX Ack Counter = 0 & K Counter >= 3
/D21.5/ or /D19.6/
- TX Ack Counter = 0
Toggle - Start error detection circuitry
Lane Polarity - Start Error Counter
RX = /D10.2/ or /D12.1/
INIT3
- xmit = /SPA/
- TX Ack Counter = TX Ack Counter + 1 RX Ack Counter < 4
- If RX = ack, then: or TX Ack Counter < 8
RX Ack Counter = RX Ack Counter + 1
Multi-Lane Channel
& RX Ack Counter >= 4
& TX Ack Counter >= 8 Single-Lane Channel
INIT4 & RX Ack Counter >= 4
& TX Ack Counter >= 8
- xmit = /SPA/
- Lane up register = 1
All Lanes up = 1
To Channel Verification Procedure
To Channel Bonding Procedure SP002_04_02_052009
Note: See “State Diagram Conventions,” page 7 for conventions used in this diagram.
CB_CTR = 4
To Channel Verification Procedure SP002_04_03_061604
Note: See “State Diagram Conventions,” page 7 for conventions used in this diagram.
Channel bonding occurs in two phases. This first phase, which corresponds to State CB0 in
Figure 4-3, consists of transceiver specific data alignment. The second phase, which
corresponds to State CB1, verifies that the transceivers have aligned correctly and are
delivering the /A/ ordered sets within the /I/ ordered set at the same time.
CV1
- xmit = verification sequence1 across channel
- If TX = /V/ then:
TX CV Counter = TX CV Counter + 1 Else
- If RX = /V/ then:
RX CV Counter = RX CV Counter + 12
RX CV Counter = at least 4
Bad /V/
& TX CV Counter = at least 8
Go to
Initialization Complete, Channel Ready Lane Initialization Procedure
State RESET0
Note: 1) The verification sequence consists of the following pattern:
60 /I/ symbols followed by the four-symbol /V/ ordered set
2) When all of the lane receivers have received the third /V/ ordered set
from their lane partners, the channel receiver portion of the receiver,
if not already enabled, must be enabled to prevent loss of data.
SP002_04_04_101603
Note: See “State Diagram Conventions,” page 7 for conventions used in this diagram.
err_cnt = 0
Soft error
Four good code
groups in a row
err_cnt = err_cnt + 1
Soft error
Soft error
Four good code
groups in a row
Four good code
groups in a row
err_cnt = err_cnt + 1 err_cnt = err_cnt - 1
Soft error
err_cnt = 0
Go to
Lane Initialization Procedure
State RESET0 SP002_04_05_110402
Section 5
• Dequeues channel PDUs, native flow control PDUs, user flow control PDUs and
delimited control symbols awaiting transmission as a character stream
• Stripes the transmit character stream across the available lanes
• Generates the idle sequence and inserts it into the transmit character stream for each
lane when no PDUs or delimited control symbols are available for transmission
• Encodes the character stream of each lane independently into 10-bit parallel code
groups
• Passes the resulting 10-bit parallel code groups to the PMA
The PCS layer performs the following receive functions:
• Decodes the received stream of 10-bit parallel code groups for each lane
independently into characters
• Marks characters decoded from invalid code groups as invalid
• Aligns the character streams to eliminate the skew between the lanes and reassembles
(destripes) the character stream from each lane into a single character stream, if the
channel is using more than one lane
• Delivers the decoded character stream of PDUs and delimited control symbols to the
higher layers
HGF EDCBA
D25.3
011 11001
y=3 x = 25
sp002_03_01_081302
The output of the 8B/10B encoding process is a 10-bit code group. The bits of a code group
are denoted with the letters a through j. The bits of a code group are all of equal
significance, there is no most significant or least significant bit. The ordering of the code
group bits is shown in Figure 5-2.
The code groups corresponding to the data character Dx.y is denoted by /Dx.y/. The code
groups corresponding to the special character Kx.y are denoted by /Kx.y/
abcdei fghj
/D25.3/
100110 1100
from x term from y term
sp002_03_02_082102
8 + control 8 + control
Input to the Output of the
ENCODE function HG F E DC B A HG F E DC B A DECODE function
-A +K +R -K -R -R +K -K -R +K +R -K -R -R +K -K -R -R +K +R +R -K -R -R +K +R +R -K +K +R -K +K -A
SP002_03_04_082202
Figure 5-5 shows an example implementation of idle generation logic which meets the
requirements.
X-Ref Target - Figure 5-5
pseudo_random_integer_generator pseudo_random_bit
clock
Q Q Q Q Q Q Q
1
msb lsb
D D D D D
down_counter
LOAD
Q Q Q Q Q
Acntr_eq_zero
send_idle_dlyd
D Q
send_idle send_idle
send_K = send_i dl e & (!send_idle_dlyd | send_i dl e_dlyd & ! A cntr_eq_zero & pseudo_random_bit)
send_A = send_i dl e & send_idle_dlyd & A cntr_eq_zero
send_R = send_i dl e & send_idle_dlyd & ! A cntr_eq_zero & !pseudo_random_bit
SP002_03_04_082102
Note:
/SCP/1 = /K28.2/ /ECP/1 = /K29.7/ /CC/1 = /K23.7/
/SCP/2 = /K27.7/ /ECP/2 = /K30.7/ /CC/2 = /K23.7/
The sequence shown is for illustrative purposes only, SP002_03_05_062507
Lane 0
D3 D2 /SCP/2 /SCP/1
D5 D4 D1 D0
Lane 1 sp002_03_06_110402
Striping allocates symbol-pairs across multiple lanes. Striping is the method used to send
data simultaneously across all n lanes of a multi-lane channel. The symbol stream is striped
across the lanes on a symbol-pair by symbol-pair basis. Striping may begin in any lane and
proceeds lane by lane. For example, the first symbol-pair is striped onto lane 0, the second
symbol-pair onto lane 1, and the nth symbol-pair onto lane n-1. The nth+1 symbol-pair is
striped onto lane 0.
The only special requirements are as follows:
• The individual symbols in the symbol pairs /SCP/, /ECP/, /SNF/, /SUF/ must not
be split between lanes, but can be transmitted and received on any lane
• When /I/ sequences are transmitted, the same data pattern must be transmitted over
each lane in the channel that requires an /I/ sequence
Figure 5-8, page 39 shows how the same channel sequence shown in Figure 5-6, page 37
would be transmitted over a channel consisting of three lanes.
Note:
/SCP/1 = /K28.2/ /ECP/1 = /K29.7/ /CC/1 = /K23.7/
/SCP/2 = /K27.7/ /ECP/2 = /K30.7/ /CC/2 = /K23.7/ SP002_03_07_062507
Section 6
Electrical Specifications
6.1 Overview
The AC specifications cover both single-lane and multi-lane implementations. The
specifications define two types of transmitters and one type of receiver with baud rates of
1.25, 2.5, and 3.125 Gbps. The Aurora 8B/10B protocol does not preclude the use of other
baud rates, but only defines timing for these by way of example.
This chapter specifies differential signaling in quantities that represent the voltage
difference between the true and complement signals. This is known as the peak-to-peak
voltage. The peak-to-peak voltage is twice that of the peak voltage of either the true or the
complement signal. Specific definitions are given Table 6-2, page 43.
To ensure interoperability between drivers and receivers of different vendors and
technologies, AC coupling at the receiver input is required.
A Volts TD or RD
B Volts TD or RD
To illustrate this concept using real values, consider the case where a current mode logic
(CML) transmitter has a termination voltage of 2.5V and has a swing between 2.5V and
2.0V. Using these values, the peak-to-peak range is 500 mV. The differential signal ranges
between 500 mV and -500 mV. The peak differential signal is 500 mV. The differential peak-
to-peak signal is 1000 mV.
6.3 Equalization
With the use of high-speed serial transceivers, the interconnect media causes degradation
of the signal at the receiver. Effects such as inter-symbol interference (ISI) or
data-dependent jitter are produced. This loss can be large enough to degrade the eye
opening at the receiver beyond that which is allowed in this specification. To negate a
portion of these effects, equalization techniques can be used, such as:
Receiver Specifications
800 mV
Minimum Eye
Differential Voltage
100 mV
-100 mV
Maximum Eye
-800 mV
800 mV
Minimum Eye
Differential Voltage
100 mV
-100 mV
Maximum Eye
-800 mV
800 mV
Minimum Eye
Differential Voltage
100 mV
-100 mV
Maximum Eye
-800 mV
Appendix A
8B/10B Encoding
8B/10B Encoding
8B/10B Encoding
8B/10B Encoding
Appendix B
1. Simplex is used in the technical sense, defined as communication across a channel in a single direction. Full-
duplex Aurora 8B/10B is used in this appendix to differentiate between Aurora 8B/10B and Aurora 8B/10B
Simplex.
Figure B-2 shows the state diagram for the lane initialization procedure of the transmit
interface. If the RESET input is asserted at any point in the initialization procedure, then
the state of the transmit interface must return to TXRESET0, as indicated in Figure B-2.
TXRESET0
- xmit = /SP/
- Reset internal state
- Lane Reset Counter = 0
TXRESET1
- xmit = /SP/
- Reset internal state else
- Lane Reset Counter = Lane Reset Counter + 1
- xmit = /SP/
else
TXRESET0
TXRESET1
- Reset internal state
- Lane Reset Counter = Lane Reset Counter + 1 Lane Reset Counter < N*
- K Counter = 0 Else
- Enable comma alignment = 1
Else
RX = /K/
RXINIT1
RX = /K/
- K Counter = K Counter + 1 & valid code group
- Enable comma alignment = 1 & K Counter 1 3
RXINIT1A
RX = RXINIT2
RX = valid code group
/D21.5/ or /D19.6/ & K Counter >= 3
- Start error detection circuitry
Toggle - Start Error Counter
Lane Polarity
RXINIT3
Lane
RX_ALIGNED = 1 All Lanes up 1 1
All Lanes up = 1
RXINIT4 RXINIT5
RX_ALIGNED = 1 RX_ALIGNED = 1
TX_BONDED = 1
To Channel Verification Procedure
SP002_B_04_061704
RXCB2 CB_CTR = 4
- Set RX_BONDED = 1
TX_VERIFY = 1
RXCV1
- If RX = /V/ then: Go to RXRESET0
RX CV Counter = CV Counter + 1 Else
RXCV4
Bad /V/ Set RX_RESET = 1
RX CV Counter = 4
RXCV2
- Lane RX_VERIFIED = 1
Else
RX_VERIFIED = 1
Go to RXRESET0
RXERR0
SP002_B_08_061704
Appendix C
References
1. IEEE Std 802.3
2. BYTE ORIENTED DC BALANCED (0,4) 8B/10B PARTITIONED BLOCK TRANSMISSION
CODE (Patent Number: 4,486,739). Inventors: Peter A. Franaszek and Albert X. Widmer
(IBM)
Glossary
Click on a letter, or scroll down to view the entire glossary.
ABCDEFGHIJKLMNOPQRSTUVWXYZ
A
Aurora 8B/10B Interface
An implementation of the Aurora 8B/10B protocol.
C
Channel
The communication link between two Aurora 8B/10B interfaces,
comprising one or more lanes.
Character
A 9-bit entity comprised of an information octet and a control bit that
indicates whether the information octet contains data or control
information. The control bit has the value D or K indicating that the
information octet contains data or control information respectively.
Clock Compensation
A compensating mechanism provided by the Aurora 8B/10B protocol
for clock rate differences between the transmitter and receiver.
Clock Encoding
A method used to transmit a clock in band with data.
Code group
A 10-bit entity that is the result of 8B/10B encoding a character. A code
group is also called a symbol.
Column
A group of characters that are transmitted simultaneously on a multi-
lane channel.
Comma
A seven-bit encoded 8B/10B sequence that is either 1100000 or 0011111
which is used for alignment. The seven-bits are the most significant
bits of a 10-bit code group. A comma is contained in the 8B/10B
symbol designated as /K28.5/.
Control Character
A character whose control bit has the value K.
D
Data Character
A character whose control bit has the value D.
Data Striping
This describes how data is mapped across a channel consisting of
multiple lanes.
Destriping
The opposite of striping; reverse of striping.
Deterministic Jitter
Deterministic jitter (DJ) is a jitter with a non-Gaussian probability
density function. Deterministic jitter is always bounded in amplitude
and has specific causes. If a sufficient amount of data is taken over a
complete cycle of each periodic element, the total amount of DJ will
remain constant.
Disparity
The difference between the number of ones and zeros in a symbol.
Disparity Error
A received code group whose value is inconsistent with the current
running disparity.
I
Idle Sequence
The sequence of characters (code groups after encoding) that is
transmitted when a PDU is not being transmitted. The idle sequence
allows the receiver to maintain bit synchronization and code group
alignment.
K
K Character
A character whose control bit has the value K. Also referred to as a
special character.
L
Lane
A full duplex physical serial connection.
Lane Alignment
The process of eliminating the skew between the lanes of a multi-lane
Aurora 8B/10B channel such that the characters transmitted as a
column by the sender are output as a column by the alignment process
of the receiver. Without lane alignment, the characters transmitted as
a column might be scattered across several columns output by the
receiver. During initialization, all lanes continuously transmit
columns of the idle sequence. The alignment process in the receiver
uses the /A/ ordered sets to realign the columns of received data.
Link Layer
This describes how the beginning and end of user protocol data units
(user PDUs) are marked during transmission. It also describes how
data pauses may be inserted in data during transmission and how
differences in clock rates between the transmitter and receiver are
managed. Equivalent to the OSI Link Layer.
N
Not-in-table Error
A received code group that does not exist in the 8B/10B table. Same as
a symbol error.
O
Octet
An 8-bit unit of information. Each bit of a octet has the value 0 or 1.
P
PCS
See Physical Coding Sublayer.
PMA
See Physical Medium Attachment.
R
Running Disparity
The cumulative disparity of a sequence of symbols. The binary
variable used by the 8B/10B encoding and decoding functions.
S
SNF
See Start of Native Flow control.
Striping
Striping allocates byte-pairs across multiple lanes. The method used
on multi-lane channels to send data simultaneously across all n lanes
that make up the channel . The byte stream is striped across the lanes,
on a byte-pair by byte-pair basis, starting with the first byte-pair on
lane 0, to the second byte-pair on lane 1, to the third byte-pair on lane
2, to the nth byte-pair on lane n-1, and wrapping back with the nth+1
byte-pair on lane 0.
Stripping
The method to remove data from a PDU.
SUF
See Start of User Flow control.
Symbol
A 10-bit entity that is the result of 8B/10B encoding a character. A
symbol is also called a code group.
Symbol Error
A received code group that does not exist in the 8B/10B table. Same as
a not-in-table error.
Symbol Time
Equivalent to 10 unit times.
T
Total Jitter
The total deviation from the ideal timing of a clock or data signal as a
result of noise, patterns, or other causes.
U
User Application
An implementation of a higher level function that transports data
across an Aurora 8B/10B channel.
User Interface
An implementation-specific interface provided to the user application
by an Aurora 8B/10B interface.
User PDUs
User protocol data units.
Unit Interval
The unit interval (UI) is the total time of one ideal clock cycle. For
example, an Aurora 8B/10B channel operating at a data rate of 3.125
Gbps has a UI of 320 ps.
V
Valid Code Group
A received code group that when decoded has neither a disparity error
nor a not-in-table error. A disparity error is defined as a received code
group whose value is inconsistent with the current running disparity.
A not-in-table error is defined as a received code group that does not
exist in the 8B/10B table.
X
XON
A command that resumes transmission in a single direction used by
native flow control
XOFF
A command that suspends transmission in a single direction used by
native flow control