Serial RapidIO (SRIO) User's Guide

www.ti.com
2.3.9.1 Translation for MMR space
A0
A0
A2
A2
A1
A1
A3
A3
L2offset0x0
DSP definedMMR
offset0x1000
Byte
lane0
31
Byte
lane3
DMA 32b
0
2.3.9.2 Endian Conversion (TMS320TCI6482)
RapidIOdefinedbitpositions
A0 A1 A2 A3
310
MMRoffset0x0000
B0 B1 B2 B3
MMRoffset0x0004
C0
C1 C2 C3
MMRoffset0x0008
D0
D1 D2 D3
MMRoffset0x000C
RapidIO
defined
MMR
offsets
A0A1A2A3B0B1B2B3C0C1C2C3D0D1D2D3
Headerfields
Type8
Response
A0
A1 A2 A3
Byte
address3
Byte
Byte
address0
L2offset0x0
B0 B1 B2 B3
L2offset0x4
C0 C1 C2 C3
L2offset0x8
D0
D1 D2 D3
L2offset0xC
BigEndian
LittleEndian
A3
A2 A1 A0
Byte
address0address3
L2offset0x0
B3 B2 B1 B0
L2offset0x4
C3 C2 C1 C0
L2offset0x8
D3
D2 D1 D0
L2offset0xC
Double-word0 Double-word1
ThedesiredoperationistosendaType8maintenancerequesttoanexternaldevice.
Thegoalistoread16BofRapidIOMMR fromanexternaldevice,startingoffset0x0000.
ThisoperationinvolvestheLSUblockandutilizestheDMA fortransferringtheresponse
packetpayload.
SRIO Functional Description
There are no Endian translation requirements for accessing the local MMR space. Regardless of the
device memory Endian configuration, all configuration bus accesses are performed on 32-bit values at a
fixed address position. The bit positions in the 32-bit word are defined by this specification. This means
that a memory image which will be copied to a MMR is identical between Little Endian and Big Endian
configurations. Configuration bus reads are performed in the same manner. Figure 30 illustrates the
concept. The desired operation is to locally update a serial RapidIO MMR (offset 1000h) with a value of
A0A1A2A3h, using the configuration bus.
Figure 30. Configuration Bus Example
When accessing RapidIO defined MMR within an external device, RapidIO allows 4 bytes, 8 bytes, or any
multiple of a double-word access (up to 64 bytes) for type 8 (maintenance) packets. The peripheral only
supports 4-byte accesses as the target, but can generate all sizes of request packets. RapidIO is defined
as Big Endian only, and has double-word aligned Big Endian packet payloads.
The DMA, however, supports byte wide accesses. The peripheral performs Endian conversion on the
payload if Little Endian is used on the device. This conversion is not only applicable for type 8 packets, but
is also relevant for all outgoing payloads of NWRITE, NWRITE_R, SWRITE, NREAD, and message
packets. This means that the memory image is different between Little Endian and Big Endian
configurations, as shown in Figure 31 .
Figure 31. DMA Example
SPRUE13A September 2006 Serial RapidIO (SRIO) 69
Submit Documentation Feedback