In the RapidIO® MegaCore® IP function, the transport layer has a shallow buffer. This buffer is there mainly for storing all incoming packets while they are being forwarded to one of the logical layers in the core (e.g. I/O Avalon®-MM slave module, I/O Avalon-MM master module, Avalon-ST interface). Also, neither the Transport layer nor the Physical layer modules have mechanisms to allow packets to bypass one another. Thus it is possible that if a Logical layer module is not able to empty packets from the Transport layer fast enough causing one of its packets to become stalled in the Transport layer module, then this will cause all packets to back up into the Physical layer until the Transport layer is able to clear its current packet. As the buffer in Physical layer fills, then retries will be issued for incoming packets per the Priority Threshold levels defined in the core settings.
For example, suppose there is a memory component connected to the I/O Avalon-MM master module that has very slow access times or, due to arbitration, the I/O Avalon-MM master module has received a wait request from the system interconnect fabric until another Avalon-MM master completes its transaction with a shared component. As a result, the I/O Avalon-MM master module has reached its limit of the number of simultaneous requests it can process and thus cannot receive any more request packets. If the next packet is another request targeting the I/O Avalon-MM master module, then it will become stalled in the Transport layer. If another packet targeting the Avalon-ST pass-through interface is received afterwards, then this packet must remain in the Physical layer buffer until the request packet in the Transport layer is cleared. Since the Physical layer buffer uses a single first-in, first-out queue for storing all incoming packets, then any packets received after the packet targeting the Avalon-ST pass-through interface will remain in the Physical layer possibly causing its queue to fill up.
At this point, the Priority Threshold core settings in the Physical layer will determine whether to accept new packets into the receiver buffer or to issue retries.