www.ti.com

SRIO Functional Description

Figure 17. Message Request Packet

n*64+64

PHY

TRA

LOG

TRA

LOG

PHY

10

2

4

16

n*64+16

16

acklD rsv prio

tt

ftype destID sourcelD msglen ssize letter mbox msgseg/xmbox double-word￿0 double-word￿1

...

double-word￿n-2 double-word￿n-1 CRC

5

3

2

2

4

8

8

4

4

2

2

4

64

64

(n-4)*64

64

64

16

ftype￿=￿1011

This enables the letter and mailbox fields to instead allow four concurrent single-segment messages to sixty-four possible mailboxes (256 total locations) for a source and destination pair. The mailbox mapper directs the inbound messages to the appropriate queue based on a pre-programmed routing table. It bases the decision on the SOURCEID, MSGLEN (the size indicates whether the message is segmented), MBOX, LETTER, and XMBOX fields of the RapidIO packet.

There are 32 programmable look-up table entries for mapping mailboxes to queues. Each entry consists of two registers, RXU_MAP_Ln and RXU_MAP_Hn, which are shown in Figure 18. A detailed summary of these register'sfield is in Section 5.50. In total, there are 64 registers, at address offsets 0800h–08FCh. Each entry stores the queue number associated with the message’s intended mailbox/letter. If a mailbox/letter is not supported or does not have a mapping table entry, the message is discarded and an ERROR response sent. The mapping entries can explicitly call out a mailbox and letter combination, or alternatively, the mask fields can be used to grant multiple mailbox/letter combinations access to a queue using the same table entry. A masking value of 0 in the mailbox or letter mask fields indicates that the corresponding bit in the mailbox or letter field will not be used to match for this queue mapping entry. For example, a mailbox mask of all zeros would allow a mapping entry to be used for all incoming mailboxes.

The mapping table entry also provides a security feature to enable or disable access from specific external devices to local mailboxes. The sourceID field indicates which external device has access to the mapping entry and corresponding queue. A compare is performed between the sourceID of the incoming message packet and each relevant mailbox/letter table mapping entry SOURCEID field. If they do not match, an ERROR response is sent back to the sender, and the transaction is logged in the logical layer error management capture registers, which sets an interrupt. A PROMISCUOUS bit allows this security feature to be disabled. When the PROMISCUOUS bit is set, full access to the mapping entry from any sourceID is allowed. Note that when the PROMISCUOUS bit is set, the mailbox/letter and corresponding mask bits are still in effect. When the PROMISCUOUS bit is cleared, it equals a mask value of FFFFh, and only a request with the matching sourceID is allowed access to the mailbox.

Each table entry also indicates if it used for single or multi-segment message mapping. Single segment message mapping entries utilize all six bits of the mailbox and corresponding mask fields. Multi-segment entries uses only the 2 LSBs. The number of simultaneous supported multi-segment messages is determined by the number of dedicated RX queues as discussed further below. It is recommended to dedicate a multi-segment mapping entry for each supported simultaneous letter. Essentially, letter masks should be avoided for multi-segment mapping to reduce excessive retries. Note that it is possible to configure the table entries such that incoming single segment and multi-segment messages are directed to the same queue. To avoid this condition, properly program the mapping table entries.

SPRUE13A –September 2006

Serial RapidIO (SRIO)

45

Submit Documentation Feedback

Page 45
Image 45
Texas Instruments TMS320TCI648x manual Message Request Packet