We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 24844

LogiCORE RapidIO v3.1 Rev 2 - The buffer can go into a permanent stall state if the current packet is discontinued and there is no lnk_next_fm change


A packet rewind condition (retry or error recovery) in which the lnk_tnext_fm does not need to change, but where there are outstanding packets in the buffer, will cause the transmit buffer to lock-up. This lock-up will prevent transmit traffic from propagating and will eventually back-up the receive buffer if there are outstanding target transactions.  


The symptoms are:  

- lnk_tnext_fm = lnk_tlast_ack + 1  

- TX_RDY_N from the buffer de-asserted  

- LNK_TDST_RDY_N from the PHY asserted, but LNK_TSRC_RDY_N from the buffer de-asserted


In this scenario, the buffer will need to be reset and the data in it will be lost. This is a rare case, however, Xilinx recommends an update to the v4.1 core. 


This issue is fixed in Serial Rapid IO v4.1 Core.

AR# 24844
Date Created 09/04/2007
Last Updated 05/21/2014
Status Archive
Type General Article