Article ID: 000084871 Content Type: Troubleshooting Last Reviewed: 09/11/2012

Why does the order of Serial Rapid IO link packets differ from the order in the application layer?

Environment

BUILT IN - ARTICLE INTRO SECOND COMPONENT
Description

Re-ordering of the Serial Rapid IO® link packets may occur in Avalon IO Slave module before the logical layer, while transmitting packets. This could be a problem on the read-after-write transactions on the same address, i.e. NWRITE followed by NREAD on the same address.

This re-ordering is intentionally implemented in Avalon module in order to maximize efficiency, because a read packet usually needs more time to complete than write packets.  Moreover, Rapid IO specification does not require keeping the order of packets within Logical layer, although, it must keep the order of packets out of logical layer to partner's logical layer.

To prevent the problem on read-after-write, use NWRITE_R instead of NWRITE and issue NREAD after receiving done response of NWRITE_R. Future Rapid IO IP versions will provide you an option to choose a switch to keep the order.

Related Products

This article applies to 1 products

Intel® Programmable Devices