Home > Articles > Networking > Routing & Switching

  • Print
  • + Share This
This chapter is from the book

This chapter is from the book

Two Types of Local Link Traffic

Local traffic occurs between the transmit interface of one device and the receive interface of its neighbor for the purpose of managing the link itself. This traffic is never forwarded or flow controlled; when sent, it must be accepted. Local traffic is further classified as Ordered Sets exchanged between the Physical Layers of two devices on a link or Data Link Layer packets (DLLPs) exchanged between the Data Link Layers of the two devices.

Ordered Sets

These are sent by each physical layer transmitter to the physical layer of the corresponding receiver to initiate link training, compensate for clock tolerance, or transition a link to and from the Electrical Idle state. As indicated in Table 3-1 on page 109, there are five types of Ordered Sets.

Each ordered set is constructed of 10-bit control (K) symbols that are created within the physical layer. These symbols have a common name as well as a alph-numeric code that defines the 10 bits pattern of 1s and 0s, of which they are comprised. For example, the SKP (Skip) symbol has a 10-bit value represented as K28.0.

Figure 3-2 on page 110 illustrates the transmission of Ordered Sets. Note that each ordered set is fixed in size, consisting of 4 or 16 characters. Again, the receiver is required to consume them as they are sent. Note that the COM control symbol (K28.5) is used to indicate the start of any ordered set.

03fig02.jpgFigure 3-2. PCI Express Link Local Traffic: Ordered Sets

Refer to the “8b/10b Encoding” on page 419 for a thorough discussion of Ordered Sets.

Table 3-1. Ordered Set Types

Ordered Set Type



Fast Training Sequence (FTS)


Quick synchronization of bit stream when leaving L0s power state.

Training Sequence One (TS1)

COM, Lane ID, 14 more

Used in link training, to align and synchronize the incoming bit stream at startup, convey reset, other functions.

Training Sequence Two (TS2)

COM, Lane ID, 14 more

See TS1.

Electrical Idle (IDLE)


Indicates that link should be brought to a lower power state (L0s, L1, L2).



Inserted periodically to compensate for clock tolerances.

Data Link Layer Packets (DLLPs)

The other type of local traffic sent by a device transmit interface to the corresponding receiver of the device attached to it are Data Link Layer Packets (DLLPs). These are also used in link management, although they are sourced at the device Data Link Layer rather that the Physical Layer. The main functions of DLLPs are to facilitate Link Power Management, TLP Flow Control, and the acknowledgement of successful TLP delivery across the link.

Table 3-2. Data Link Layer Packet (DLLP) Types



Acknowledge (Ack)

Receiver Data Link Layer sends Ack to indicate that no CRC or other errors have been encountered in received TLP(s). Transmitter retains copy of TLPs until Ack'd

No Acknowledge (Nak)

Receiver Data Link Layer sends Nak to indicate that a TLP was received with a CRC or other error. All TLPs remaining in the transmitter's Retry Buffer must be resent, in the original order.

PM_Enter_L1; PM_Enter_L23

Following a software configuration space access to cause a device power management event, a downstream device requests entry to link L1 or Level 2-3 state


Downstream device autonomously requests L1 Active State


Upstream device acknowledges transition to L1 State

Vendor-Specific DLLP

Reserved for vendor-specific purposes




Flow Control Initialization Type One DLLP awarding posted (P), nonposted (NP), or completion (Cpl) flow control credits.




Flow Control Initialization Type Two DLLP confirming award of InitFC1 posted (P), nonposted (NP), or completion (Cpl) flow control credits.




Flow Control Credit Update DLLP awarding posted (P), nonposted (NP), or completion (Cpl) flow control credits.

As described in Table 3-2 on page 111 and shown in Figure 3-3 on page 112, there are three major types of DLLPs: Ack/Nak, Power Management (several variants), and Flow Control. In addition, a vendor-specific DLLP is permitted in the specification. Each DLLP is 8 bytes, including a Start Of DLLP (SDP) byte, 2-byte CRC, and an End Of Packet (END) byte in addition to the 4 byte DLLP core (which includes the type field and any required attributes).

03fig03.jpgFigure 3-3. PCI Express Link Local Traffic: DLLPs

Note that unlike Ordered Sets, DLLPs always carry a 16-bit CRC which is verified by the receiver before carrying out the required operation. If an error is detected by the receiver of a DLLP, it is dropped. Even though DLLPs are not acknowledged, time-out mechanisms built into the specification permit recovery from dropped DLLPs due to CRC errors.

Refer to “Data Link Layer Packets” on page 198 for a thorough discussion of Data Link Layer packets.

  • + Share This
  • 🔖 Save To Your Account