www.ti.com

SRIO Functional Description

TX_Queue_Map has been programmed to send two messages from Queue 0 before moving to Queue 1, it will re-attempt to send the same message from Queue 0 before moving on. Whether it is successful or not, the next attempt will come from Queue 1. Within a given queue, the hardware will always try to send the head buffer descriptor and can not move to the next buffer descriptor in the queue until a completion code is written. The weighted round robin control advocates, that statistically over many transmissions, the messages will be transmitted in accordance with the percentages programmed into the registers .

Network traffic can also affect the packet delivery order. The physical layer of the RapidIO peripheral can re-order packets of different priorities when fabric congestion occurs.

If message ordering is needed, the following must be obeyed:

Multi Segmented Messages

If there are only two devices A sending to B where ordering has to be guaranteed:

- Use one TX queue

- Use the same priority

- Map all messages to the same RX queue

If there are multiple devices A and B both sending to C, and ordering has to be guaranteed for both:

- Use one TX queue in each sending device

- Use the same priority within each TX queue

- Map all A messages to the same RX queue and all B messages to another queue by disabling the promiscuous mode and programming allowable sourceIDs.

Single Segmented Messages

There will never be a retry so even if there are multiple senders:

- Use one TX queue in each sending device

- Use the same priority within each TX queue

- Map all messages to the same RX queue

SPRUE13A –September 2006

Serial RapidIO (SRIO)

55

Submit Documentation Feedback

Page 55
Image 55
Texas Instruments TMS320TCI648x manual Srio Functional Description