0% found this document useful (0 votes)
5 views3 pages

Stack Multiplexing

The document outlines the conditions and mechanisms for stack multiplexing in network protocols, particularly focusing on the negotiation of multi_protocol_enable and management transport protocols. It details how multiple protocol stacks can share a physical link while ensuring no consecutive flits are sent from the same stack, using NOP flits to maintain order. Additionally, it discusses the enhanced multi_protocol_enable feature that allows dynamic multiplexing of different protocols and the requirements for adapter support in terms of bandwidth and arbitration methods.

Uploaded by

KEN Kaniki
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
5 views3 pages

Stack Multiplexing

The document outlines the conditions and mechanisms for stack multiplexing in network protocols, particularly focusing on the negotiation of multi_protocol_enable and management transport protocols. It details how multiple protocol stacks can share a physical link while ensuring no consecutive flits are sent from the same stack, using NOP flits to maintain order. Additionally, it discusses the enhanced multi_protocol_enable feature that allows dynamic multiplexing of different protocols and the requirements for adapter support in terms of bandwidth and arbitration methods.

Uploaded by

KEN Kaniki
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

3.

1 stack multiplexing December 17, 2025

 If multi_protocol_enable is negotiated: -
- 2 stacks are multiplexed on the same physical link
(supported when each protocol stack needs half the bandwidth provided by the phy
layer)
- condition :both stacks must be of the same protocol with the same protocol
capabilities
- the adapter must guarantee that it will not send consecutive flits from the
same protocol stack on
the link . why? Because Multi_Protocol_Enable and Raw Format are mutually
we want multiprotocol NOP  non
- this applies in all cases when flits are sourced from: - operation
- FDI
- Retry buffer
- data stream is paused and restarted
NOP’S
- Adapter is permited to add NOP’s to guarantee that consecutive flits does not
happen
- NOP flit is defined to be a flit where the protocol identifier in the flit header
corresponds to the adapter layer and the body of the flit is 0’s
- This flits bypass the Tx retry buffer and doesn’t forwarded to the protocol layer
on the reciever if the adapter guarantee that it doesn’t send consecutive flits
from the same stack
- When flits are transmitted from the retry buffer , it is required to insert NOP’s
as needed to prevent consequent flits from the same stack (adapter add NOP’s
here)

Show that retry buffer is in


2D2 layer

 When multi_protocol_enable and


management transport protocol
MPG Management Port
is negotiated: - Gateway multiplexer

1 Abdulrahman Mohamad
3.1 stack multiplexing December 17, 2025

- protocol layer implements MPG MUX  must be on both stacks


- Example: -
If both stack 1 and stack 2 have PCIe or streaming protocol in config b
multiple_protocol_enable can be negotiated. why? because the (MPG
mux) is implemented in both stacks

 When management transport protocol is negotiated for


mainband with Multi_Protocol_Enable: -
- Management flit has the same stack identifier as the protocol layer, it is
multiplexed with
- Adapter layer treats these flits same as flits received from the corresponding
protocol layer for the purpose of throttling and interleaving
- NOP’s can bypass the retry buffer if the adapter guarantee no consecutive
flits from the same stack
- but on the receiving side the adapter shouldn’t forward these NOP’s flits to
the protocol layer
- note that the receiving protocol layer must be able to receive consecutive flit
chunks from the same flit at the same max. speed but no consecutive flits
both protocol stacks must operate with ( same protocol – same flit
format )
- Each stack is given a single bit stack identifier that is carried along with the
Flit header for de-multiplexing of Flits on the Receiver.

- The Stack Mux shown maintains independent Link


state machines for each protocol stack

Why multiplexing ?
The primary motivation for enabling the Multi_Protocol_Enable parameter is to
allow

implementations to take advantage of the higher bandwidth provided by the


UCIe

Link for lower-bandwidth individual Protocol Layers, without the need to make a
lot of

2 Abdulrahman Mohamad
3.1 stack multiplexing December 17, 2025

 If enhanced multi_protocol_enable is negotiated: -


- Dynamic multiplexing for different similar protocols on the same physical link
is supported

 If enhanced multi_protocol_enable and transport


management protocol is negotiated: -
- Each stack can have different protocol with or without MPG MUX
- Both protocol stacks and adapter must support a common flit format to
enable this feature
- enhanced multi_protocol_enable and raw format are exclusive
- Example: -

note that there is MPG MUX in one


side only not both

note that protocol on these stacks


could be different

so enhanced multi_protocol_enable
must be supported for that case

- Adapter must advertise the max. bandwidth that the receiver for each
protocol layer can accept
- So, the adapter transmitter must support 100% of the bandwidth
- The adapter must support throttling (one or two of) the protocol layer to 50%
of the bandwidth  the remote link partner must guarantee that it will not
send consecutive flits from the same stack using NOP’s
- When this capability is supported, the adapter must be able to allow each
protocol layer to use 100% of the link independently
- But adapters must support round robin arbitration between protocol layers
arbitration is per flit
(specific arbitration scheme is allowed  per flit + holds for Max. bandwidth advertised by the remote
adapter)
- The Flit header has a single bit stack identifier to identify the destination
stack for the flit.
- The Stack Mux maintains independent Link state machines for each protocol
stack

3 Abdulrahman Mohamad

You might also like