Preface Overview General RapidIO System RapidIO Feature Support in SRIO Standards External Devices Requirements TI Devices Supported By This Document SRIO Functional Description Overview SRIO Pins Functional Operation Logical/Transport Error Handling and Logging Interrupt Conditions CPU Interrupts General Description Interrupt Condition Status and Clear Registers Interrupt Condition Routing Registers Interrupt Status Decode Registers Interrupt Generation...
Page 4
5.23 LSU Interrupt Condition Clear Register (LSU_ICCR) 5.24 Error, Reset, and Special Event Interrupt Condition Status Register (ERR_RST_EVNT_ICSR) 5.25 Error, Reset, and Special Event Interrupt Condition Clear Register (ERR_RST_EVNT_ICCR) 5.26 DOORBELLn Interrupt Condition Routing Registers (DOORBELLn_ICRR and DOORBELLn_ICRR2) 5.27 RX CPPI Interrupt Condition Routing Registers (RX_CPPI_ICRR and RX_CPPI_ICRR2) 5.28 TX CPPI Interrupt Condition Routing Registers (TX_CPPI_ICRR and TX_CPPI_ICRR2) 5.29...
Page 5
5.69 Port Link Maintenance Request CSR n (SPn_LM_REQ) 5.70 Port Link Maintenance Response CSR n (SPn_LM_RESP) 5.71 Port Local AckID Status CSR n (SPn_ACKID_STAT) 5.72 Port Error and Status CSR n (SPn_ERR_STAT) 5.73 Port Control CSR n (SPn_CTL) 5.74 Error Reporting Block Header Register (ERR_RPT_BH) 5.75 Logical/Transport Layer Error Detect CSR (ERR_DET) 5.76...
Page 6
RapidIO Architectural Hierarchy RapidIO Interconnect Architecture Serial RapidIO Device to Device Interface Diagrams SRIO Peripheral Block Diagram Operation Sequence 1x/4x RapidIO Packet Data Stream (Streaming-Write Class) Serial RapidIO Control Symbol Format SRIO Component Block Diagram SERDES Macro Configuration Register 0 (SERDES_CFG0_CNTL) SERDES Receive Channel Configuration Register n (SERDES_CFGRXn_CNTL) SERDES Transmit Channel Configuration Register n (SERDES_CFGTXn_CNTL) Load/Store Registers for RapidIO (Address Offset: LSU1 400h–418h, LSU2 420h–438h, LSU3...
Page 7
RX CPPI Interrupt Condition Status and Clear Registers TX CPPI Interrupt Condition Status and Clear Registers LSU Interrupt Condition Status and Clear Registers Error, Reset, and Special Event Interrupt Condition Status and Clear Registers Doorbell 0 Interrupt Condition Routing Registers RX CPPI Interrupt Condition Routing Registers TX CPPI Interrupt Condition Routing Registers LSU Interrupt Condition Routing Registers...
Page 8
LSUn FLOW_MASK Fields Queue n Transmit DMA Head Descriptor Pointer Register (QUEUEn_TXDMA_HDP) Queue n Transmit DMA Completion Pointer Register (QUEUEn_TXDMA_CP) Queue n Receive DMA Head Descriptor Pointer Register (QUEUEn_RXDMA_HDP) Queue n Receive DMA Completion Pointer Register (QUEUEn_RXDMA_CP) Transmit Queue Teardown Register (TX_QUEUE_TEAR_DOWN) - Address Offset 0700h Transmit CPPI Supported Flow Mask Registers TX Queue n FLOW_MASK Fields Receive Queue Teardown Register (RX_QUEUE_TEAR_DOWN) (Address Offset 0740h)
Page 9
Port IP Mode CSR (SP_IP_MODE) - Address Offset 12004h Port IP Prescaler Register (IP_PRESCAL) - Address Offset 12008h Port-Write-In Capture CSRs Port Reset Option CSR n (SPn_RST_OPT) Port Control Independent Register n (SPn_CTL_INDEP) Port Silence Timer n Register (SPn_SILENCE_TIMER) Port Multicast-Event Control Symbol Request Register n (SPn_MULT_EVNT_CS) Port Control Symbol Transmit n Register (SPn_CS_TX) SPRUE13A –...
Page 10
TI Devices Supported By This Document Registers Checked for Multicast DeviceID Packet Types Pin Description SERDES Macro Configuration Register 0 (SERDES_CFG0_CNTL) Field Descriptions Line Rate versus PLL Output Clock Frequency Effect of the RATE Bits Frequency Range versus MPY Value SERDES Receive Channel Configuration Register n (SERDES_CFGRXn_CNTL) Field Descriptions EQ Bits SERDES Transmit Channel Configuration Register n (SERDES_CFGTXn_CNTL) Field Descriptions...
Page 11
RapidIO DEVICEID1 Register (DEVICEID_REG1) Field Descriptions RapidIO DEVICEID2 Register (DEVICEID_REG2) Field Descriptions PF_16B_CNTL Registers Packet Forwarding Register n for 16-Bit DeviceIDs (PF_16B_CNTLn) Field Descriptions PF_8B_CNTL Registers Packet Forwarding Register n for 8-Bit DeviceIDs (PF_8B_CNTLn) Field Descriptions SERDES_CFGRXn_CNTL Registers and the Associated Ports SERDES Receive Channel Configuration Register n (SERDES_CFGRXn_CNTL) Field Descriptions EQ Bits SERDES_CFGTXn_CNTL Registers and the Associated Ports...
Page 12
LSUn_REG6 Registers and the Associated LSUs LSUn Control Register 6 (LSUn_REG6) Field Descriptions LSUn_FLOW_MASKS Registers and the Associated LSUs LSUn Congestion Control Flow Mask Register (LSUn_FLOW_MASKS) Field Descriptions LSUn FLOW_MASK Fields QUEUEn_TXDMA_HDP Registers Queue n Transmit DMA Head Descriptor Pointer Register (QUEUEn_TXDMA_HDP) Field Descriptions QUEUEn_TXDMA_CP Registers Queue Transmit DMA Completion Pointer Registers (QUEUEn_TXDMA_CP) Field Descriptions QUEUEn_RXDMA_HDP Registers...
Page 13
Error Reporting Block Header Register (ERR_RPT_BH) Field Descriptions Logical/Transport Layer Error Detect CSR (ERR_DET) Field Descriptions Logical/Transport Layer Error Enable CSR (ERR_EN) Field Descriptions Logical/Transport Layer High Address Capture CSR (H_ADDR_CAPT) Field Descriptions Logical/Transport Layer Address Capture CSR (ADDR_CAPT) Field Descriptions Logical/Transport Layer Device ID Capture CSR (ID_CAPT) Field Descriptions Logical/Transport Layer Control Capture CSR (CTRL_CAPT) Field Descriptions Port-Write Target Device ID CSR (PW_TGT_ID) Field Descriptions...
TMS320TCI648x Bootloader User's Guide(literature number SPRUEC7) describes the features of the on-chip Bootloader provided with the TMS320TCI648x Digital Signal Processor (DSP). Included are descriptions of the available boot modes and any interfacing requirements associated with them, instructions on generating the boot table, and information on the different versions of the Bootloader.
Page 15
Trademarks TMS320TCI648x, C6000, TMS320C62x, TMS320C67x, TMS320C6000, Code Composer Studio are trademarks of Texas Instruments. RapidIO is a registered trademark of RapidIO Trade Association. InfiniBand is a trademark of the InfiniBand Trade Association. SPRUE13A – September 2006 Submit Documentation Feedback...
Overview The RapidIO peripheral used in the TMS320TCI648x is called a serial RapidIO (SRIO). This chapter describes the general operation of a RapidIO system, how this module is connected to the outside world, the definitions of terms used within this document, and the features supported and not supported for SRIO.
www.ti.com Figure 1. RapidIO Architectural Hierarchy Logical specification Information necessary for the end point to process the transaction (i.e., transaction type, size, physical address) Transport specification Information to transport packet from end to end in the system (i.e., routing address) Physical specification Information necessary to move packet between two physical devices (i.e., electrical...
www.ti.com Figure 3. Serial RapidIO Device to Device Interface Diagrams Serial RapidIO 1x Device to 1x Device Interface Diagram Serial RapidIO 4x Device to 4x Device Interface Diagram RapidIO Feature Support in SRIO Features Supported in SRIO Peripheral: RapidIO Interconnect Specification V1.2 compliance, Errata 1.2 Physical Layer 1x/4x LP-Serial Specification V1.2 compliance 4x Serial RapidIO with auto-negotiation to 1x port, optional operation for four 1x ports Integrated clock recovery with TI SERDES...
Overview Features Not Supported: Compliance with the Global Shared Memory specification (GSM) 8/16 LP-LVDS compatible Destination support of RapidIO Atomic Operations Simultaneous mixing of frequencies between 1x ports (all ports must be the same frequency) Target atomic operations (including increment, decrement, test-and-swap, set, and clear) for internal L2 memory and registers Standards The SRIO peripheral is compliant to V1.2 of the RapidIO Interconnect Specification and V1.2 of the...
www.ti.com SRIO Functional Description Overview 2.1.1 Peripheral Data Flow This peripheral is designed to be an externally driven slave module that is capable of acting as a master in the DSP system. This means that an external device can push (burst write) data to the DSP as needed, without having to generate an interrupt to the CPU or without relying on the DSP EDMA.
SRIO Functional Description 1.25 to 3.125 Gbps differential data RX Clock recovery Clock recovery Clock recovery Clock recovery Within the physical layer, the data next goes to the 8-bit/10-bit (8b/10b) decode block. 8b/10b encoding is used by RapidIO to ensure adequate data transitions for the clock recovery circuits. Here the 20% encoding overhead is removed as the 10-bit data is decoded to the raw 8-bit data.
www.ti.com SRIO endpoints are typically not connected directly to each other but instead have intervening connection fabric devices. Control symbols are used to manage the flow of transactions in the SRIO physical interconnect. Control symbols are used for packet acknowledgment, flow control information, and maintenance functions.
SRIO Functional Description Figure 6. 1x/4x RapidIO Packet Data Stream (Streaming-Write Class) address rsrv xamsbs acklD rsv tt ftype destID prio sourcelD prio ftype a c k l D destID sourcelD address rsrv xamsbs Note: Figure 6 assumes that addresses are 32-bit and device IDs are 8-bit. The device ID, being an 8-bit field, will address up to 256 nodes in the system.
www.ti.com The type of received packet determines how the packet routing is handled. Reserved or undefined packet types are destroyed before being processed by the logical layer functional blocks. This prevents erroneous allocation of resources to them. Unsupported packet types are responded to with an error response packet.
SRIO Functional Description Pin Name Count RIOTX3/ RIOTX3 RIOTX2/ RIOTX2 RIOTX1/ RIOTX1 RIOTX0/ RIOTX0 RIORX3/ RIORX3 RIORX2/ RIORX2 RIORX1/ RIORX1 RIORX0/ RIORX0 RIOCLK/ RIOCLK Functional Operation 2.3.1 Component Block Diagram Figure 8 shows a component block diagram of the SRIO peripheral. The load/store unit (LSU) controls the transmission of direct I/O packets, and the memory access unit (MAU) controls the reception of direct I/O packets.
www.ti.com Figure 8. SRIO Component Block Diagram Load/Store units (LSUs) TX direct I/O Maintenance 4.5 KB TX shared buffer TX buffering 32 x 276B 8 buffers per 1X port - all priorities 32 buffers per 4X port - 8 per priority Port 0 8 x 276 TX 8 x 276 RX...
SRIO Functional Description 2.3.2 SERDES Macro and its Configurations SRIO offers many benefits to customers by allowing a scalable non-proprietary interface. With the use of TI’s SERDES macros, the peripheral is very adaptable and bandwidth scalable. The same peripheral can be used for all three frequency nodes specified in V1.2 of the RapidIO Interconnect Specification (1.25, 2.5, and 3.125 Gbps).
www.ti.com Table 5. SERDES Macro Configuration Register 0 (SERDES_CFG0_CNTL) Field Descriptions Field Value 31–10 Reserved 0000h 9–8 7–6 Reserved 5–1 00000b 00001b 00010b 00011b 00100b 00101b 00110b 00111b 01000b 01001b 01010b 01011b 01100b 01111b 1xxxxb ENPLL Based on the MPY value, the line rate versus PLL output clock frequency can be calculated. This is summarized in Table SPRUE13A –...
SRIO Functional Description Table 6. Line Rate versus PLL Output Clock Frequency Rate Full Half Quarter RIOCLK and RIOCLK FREQ The rate is defined by the RATE bits of the SERDES_CFGRXn_CNTL register and the SERDES_CFGTXn_CNTL register, respectively. The primary operating frequency of the SERDES macro is determined by the reference clock frequency and PLL multiplication factor.
www.ti.com The clock recovery algorithms listed in the CDR bits operate to adjust the clocks used to sample the received message so that the data samples are taken midway between data transitions. The second order algorithm can be optionally disabled, and both can be configured to optimize their dynamics. Both algorithms use the same basic technique for determining whether the sampling clock is ideally placed, and if not whether it needs to be moved earlier or later.
Page 32
SRIO Functional Description Table 9. SERDES Receive Channel Configuration Register n (SERDES_CFGRXn_CNTL) Field Field 25–24 Reserved Reserved 22–19 0000b–1111b 18–16 15–14 13–12 ALIGN Reserved 10–8 TERM INVPAIR 6–5 RATE Serial RapidIO (SRIO) Descriptions (continued) Value Description Always write 0s to these reserved bits. This read-only bit returns 0 when read.
www.ti.com Table 9. SERDES Receive Channel Configuration Register n (SERDES_CFGRXn_CNTL) Field Field 4–2 BUSWIDTH Reserved ENRX CFGRX[22–19] 0000b 0001b 001xb 01xxb 1000b 1001b 1010b 1011b 1100b 1101b 1110b 1111b 2.3.2.3 Enabling the Transmitter To enable a transmitter for serialization, the ENTX bit of the associated SERDES_CFGTXn_CNTL registers (110h–10Ch) must be set high.
SRIO Functional Description Figure 12. Load/Store Registers for RapidIO (Address Offset: LSU1 400h–418h, LSU2 420h–438h, LSU3 LSU _REG0 LSU _REG1 LSU _REG2 LSU _REG3 LSU _REG4 OutPortID LSU _REG5 Drbll Info LSU _REG6 The mapping of LSU register fields to RapidIO packet header fields is explained in Table 14 has the fields of the control and command registers (LSUn_REG0 through LSUn_REG5), and Table 15...
www.ti.com Table 14. LSU Control/Command Register Fields (continued) LSU Register Field RapidIO Packet Header Field DestID RapidIO destinationID field specifying the target device. Packet Type 4 MSBs: 4-bit ftype field for all packets 4 LSBs: 4-bit trans field for packet types 2, 5, and 8 OutPortID Not available in RapidIO header.
SRIO Functional Description LSU _REG1 LSU _REG2 LSU _REG3 LSU _REG4 LSU _REG5 Rdy/BSY Completion The following code illustrates an LSU registers programming example. SRIO_REGS->LSU1_REG0 = SRIO_REGS->LSU1_REG1 = SRIO_REGS->LSU1_REG2 = SRIO_REGS->LSU1_REG3 = SRIO_REGS->LSU1_REG4 = SRIO_REGS->LSU1_REG5 = Figure 14 gives an example of the data flow and field mappings for a burst NWRITE_R transaction. Serial RapidIO (SRIO) Figure 13.
www.ti.com Priority OutPortID LSU _REG5 Drbll Hop Count Packet 16 15 ackID prio ftype destID sourceID For WRITE commands, the payload is combined with the header information from the control/command registers and buffered in the shared TX buffer resource pool. Finally, it is forwarded to the TX FIFO for transmission.
SRIO Functional Description Figure 15. Load/Store Module Data Flow Diagram RapidIO transport and physical layers Port x transmission FIFO queues FIFO FIFO 2.3.3.2 Direct I/O TX Operation WRITE Transactions: The TX buffers are implemented in a single SRAM and shared between multiple cores. A state machine arbitrates and assigns available buffers between the LSUs.
Page 41
www.ti.com Data leaves the shared TX buffer sequentially in order of receipt, not based on the packet priority. However, if fabric congestion occurs, priority can affect the order in which the data leaves the TX FIFOs. A reordering mechanism exists here, which transmits the highest priority packets first if RETRY acknowledges.
Page 42
SRIO Functional Description Segmentation: The LSU handles two types of segmentation of outbound requests. The first type is when the Byte_Count of Read/Write requests exceeds 256 bytes (up to 4K bytes). The second type is when Read/Write request RapidIO address is non-64-bit aligned. In both cases, the outgoing request is broken up into multiple RapidIO request packets.
Page 43
www.ti.com So the general flow is as follows: Previously, the control/command registers were written and the request packet was sent Response Packet Type13, Trans != 0001b arrives at module interface, and is handled sequentially (not based on priority) The argetTID is examined to determine routing of a response to the appropriate core The status field of the response packet is checked for ERROR, RETRY or DONE If the field is DONE, it submits DMA bus request and transmits the payload (if any) to DSP address.
SRIO Functional Description Out-of-order responses are allowed. A RETRY response is issued to the first received segment of a multi-segment message when the RX queue is busy servicing another request. – Subsequent RETRY responses may have to be sent for received pipeline segments or additional pipelined messages to the same queue.
www.ti.com acklD prio ftype destID sourcelD msglen 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.
SRIO Functional Description Figure 18. Mailbox to Queue Mapping Register Pair Mailbox to Queue Mapping Register L n (RXU_MAP_L n ) 30 29 LETTER_MASK MAILBOX_MASK R/W-11 R/W-111111 Mailbox to Queue Mapping Register H n (RXU_MAP_H n ) 10 9 Reserved LEGEND: R/W = Read/Write;...
www.ti.com If a RX message’s length is greater than that of the targeted buffer descriptor, an ERROR response is sent back to the source device. In addition, the DSP is notified with the use of the CC field of the RX CPPI buffer descriptor, described as follows.
Page 48
SRIO Functional Description Table 18. RX Buffer Descriptor Field Descriptions (continued) Field ownership teardown_complete message_length src_id mailbox Serial RapidIO (SRIO) Description Ownership: Indicates ownership of the message and is valid only on sop. This bit is set by the DSP core and cleared by the port when the message has been transmitted. The DSP core uses this bit to reclaim buffers.
www.ti.com Although the switch fabric delivers the segments of multi-packet messages in the order they were sent, buffer resources at the receiving endpoint may only become available after the initial segment(s) of a message have had to be retried. The peripheral can accept out-of-order segments and track completion of the overall message.
Page 50
SRIO Functional Description In addition, multiple messages can be interleaved at the receive port due to ordering within a connected switch’s output queue. This can occur when using a single or multiple priorities. The RX CPPI block can handle simultaneous interleaved multi-segment messages. This implies that state information (write pointers and sourceID) is maintained on each simultaneous message to properly store the segments in memory.
www.ti.com CPPI block CPPI control registers Data buffer 2.3.4.2 TX Operation Outgoing messages are handled similarly, with buffer descriptor queues that are assigned by the CPUs. The queues are configured and initialized upon reset. When a CPU wants to send a message to an external RapidIO device, it writes the buffer descriptor information via the configuration bus into the SRAM.
SRIO Functional Description Table 20. TX DMA State Completion Pointer (CP) (Address Offset 58h–5BCh) Name Description 31–0 TX Queue TX Queue Completion Pointer: This field is the DSP core memory address for the transmit queue Completion Pointer completion pointer. This register is written by the DSP core with the buffer descriptor address for the last buffer processed by the DSP core during interrupt processing.
Page 53
www.ti.com Table 21. TX Buffer Descriptor Field Definitions (continued) Field retry_count message_length dest_id port_id SPRUE13A – September 2006 Submit Documentation Feedback Description Message Retry Count: Set by the DSP core to indicate the total number of retries allowed for this message, including all segments. Decremented by the port each time a message is retried.
Page 54
SRIO Functional Description Table 21. TX Buffer Descriptor Field Definitions (continued) Field ssize mailbox Once the port controls the buffer descriptor, the DEST_ID field can be queried to determine flow control. If the transaction has been flow controlled, the DMA bus READ request is postponed so that the TX buffer space is not wasted.
Page 55
www.ti.com 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.
Page 58
SRIO Functional Description Table 22. Weighted Round Robin Programming Registers (Address Offset 7E0h–7ECh) (continued) Field Pair Register[Bits] TX_Queue_Map11 TX_QUEUE_CNTL2[27–24] TX_QUEUE_CNTL2[31–28] TX_Queue_Map12 TX_QUEUE_CNTL3[3–0] TX_QUEUE_CNTL3[7–4] TX_Queue_Map13 TX_QUEUE_CNTL3[11–8] TX_QUEUE_CNTL3[15–12] TX_Queue_Map14 TX_QUEUE_CNTL3[19–16] TX_QUEUE_CNTL3[23–20] TX_Queue_Map15 TX_QUEUE_CNTL3[27–24] TX_QUEUE_CNTL3[31–28] The TX queues are treated differently than the RX queues. A TX queue can mix single and multi-segment message buffer descriptors.
Page 59
www.ti.com A transaction timeout is used by all outgoing message and direct I/O packets. It has the same value and is analogous to the request-to-response timer discussed in the RX CPPI and LSU sections, which is defined by the 24-bit value in the port response time-out CSR (See Specification states that the maximum time interval (all 1s) is between 3 and 6 seconds.
Page 60
SRIO Functional Description 2.3.4.4 Message Passing Software Requirements Software performs the following functions for messaging: RX Operation Assigns Mailbox-to-queue mapping and allowable SourceIDs/mailbox- Queue Mapping Sets up associated buffer descriptor memory – CPPI RAM or L2 RAM Link-lists the buffer descriptors, next_descriptor_pointer Assigns single segment (256-byte payload) and multi-segment (4K-byte payload) buffers to queues buffer_length Assigns buffer descriptor to data buffer, buffer_pointer...
www.ti.com Descriptor Descriptor Start Message Passing SRIO_REGS->Queue0_RXDMA_HDP SRIO_REGS->Queue0_TXDMA_HDP 2.3.5 Maintenance The type 8 MAINTENANCE packet format accesses the RapidIO capability registers (CARs), command and status registers (CSRs), and data structures. Unlike other request formats, the type 8 packet format serves as both the request and the response format for maintenance operations. Type 8 packets contain no addresses and only contain data payloads for write requests and read responses.
SRIO Functional Description for any desired purpose; see the RapidIO Interconnect Specification, Section 3.1.4, Type 10 Packet Formats (Doorbell Class), for information about the info field. A processing element that receives a doorbell transaction takes the packet and puts it in a doorbell message queue within the processing element.
SRIO Functional Description Since CCPs do not have guaranteed delivery and can be dropped by the fabric, an implicit method of enabling an Xoff’d flow must exist. A simple timeout method is used. Additionally, flow control checks can be enabled or disabled through the Transmit Source Flow Control Masks. Received CCPs are not passed through the DMA bus interface.
www.ti.com Table 24. Flow Control Table Entry Register n (FLOW_CNTLn) Field Descriptions Field 31–18 Reserved 17–16 15–0 FLOW_CNTL_ID Each transmit source, including any LSU and any TX CPPI queue, indicates which of the 16 flows it uses with a 16-bit flow mask. Figure 28 illustrates the general form of an individual flow mask.
SRIO Functional Description Field Value Description FL15 TX source does not support Flow 15 from table entry TX source supports Flow 15 from table entry FL14 TX source does not support Flow 14 from table entry TX source supports Flow 14 from table entry FL13 TX source does not support Flow 13 from table entry TX source supports Flow 13 from table entry...
www.ti.com 2.3.9.1 Translation for MMR space 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.
SRIO Functional Description 2.3.10 Reset and Power Down The RapidIO peripheral allows independent software controlled shutdown for the logical blocks listed in Table 26. With the exception of BLK0_EN for the memory-mapped registers (MMRs), when the BLKn_EN signals are deasserted, the clocks are gated to these blocks, effectively providing a shutdown function. Logical Block Reset DMA interface...
www.ti.com 2.3.10.1 Reset and Power Down Summary After reset, the state of the peripheral depends on the default register values. Software can also perform a hard reset of each logical block within the peripheral via the GBL_EN and BLKn_EN bits. The GBL_EN bit resets the peripheral, while the rest of the device is not reset. The BLKn_EN bits shut down unused portions of the peripheral, which minimizes power by resetting the appropriate logical block(s) and gating off the clock to the appropriate logical block(s).
SRIO Functional Description Table 27. Global Enable and Global Enable Status Field Descriptions Register (Bit) Field GBL_EN(31–1) Reserved GBL_EN(0) GBL_EN_STAT(31–10) Reserved GBL_EN_STAT(9) BLK8_EN_STAT GBL_EN_STAT(8) BLK7_EN_STAT GBL_EN_STAT(7) BLK6_EN_STAT GBL_EN_STAT(6) BLK5_EN_STAT GBL_EN_STAT(5) BLK4_EN_STAT GBL_EN_STAT(4) BLK3_EN_STAT GBL_EN_STAT(3) BLK2_EN_STAT GBL_EN_STAT(2) BLK1_EN_STAT GBL_EN_STAT(1) BLK0_EN_STAT GBL_EN_STAT(0) GBL_EN_STAT The 18 block-specific registers are represented by bits with the same functions, which are described in...
www.ti.com LEGEND: R = Read, W = Write, -n = Value after reset LEGEND: R = Read, W = Write, -n = Value after reset LEGEND: R = Read, W = Write, -n = Value after reset LEGEND: R = Read, W = Write, -n = Value after reset LEGEND: R = Read, W = Write, -n = Value after reset Table 28.
SRIO Functional Description 2.3.10.3 Software Shutdown Details Power consumption is minimized for all logical blocks that are in shutdown. In addition to simply asserting the appropriate reset signal to each logical block within the peripheral, clocks are gated off to the corresponding logical block as well.
Page 75
www.ti.com Table 29. Peripheral Control Register (PCR) Field Descriptions (continued) Field Value Description SOFT Soft stop. This bit and the FREE bit determine how the SRIO peripheral behaves during emulation halts. Hard stop. All status registers are frozen in default state. (This mode is not supported on the SRIO peripheral.) Soft stop FREE...
Page 76
SRIO Functional Description The physical layer buffers act like a FIFO unless there is a retry of a packet from the connected device, in which case a re-ordering algorithm is used. The algorithm searches backward through the buffer group for the first packet with the highest priority.
www.ti.com For multi-segment messages, if the transfer is unsuccessful after 256 times of credit request for the first segment, the TXU moves to the next queue in the round-robin loop. The TXU tries to send the unsent message again the next time around the loop. After the first segment is granted outbound credit and is sent to the physical layer for transmission, all subsequent segments are given 64K attempts to gain outbound credit.
SRIO Functional Description 4. DSP executes idle instruction. 5. RapidIO ports send Idle control symbols to train PHYs. 6. Host enabled to explore system with RapidIO Maintenance packets. 7. Host identifies, enumerates and initializes the RapidIO device. 8. Host controller configures DSP peripherals through maintenance packets. SRIO Device IDs are set for DSPs (either by pin strapping or by host manipulation) 9.
www.ti.com Device TMS320TCI6482 2.3.15.2 Daisy Chain Operation and Packet Forwarding Some applications may require daisy chaining of devices together versus using a switch fabric. Typically, these applications are low cost implementations. Daisy chains have variable system latency depending on device position within the chain. Daisy chain implementations also have reduced bandwidth capabilities, since the link bandwidth doesn’t change, the bandwidth allocated to each device in the chain is limited (sum of devices’...
SRIO Functional Description Figure 43. Packet Forwarding Register n for 8-Bit Device IDs (PF_8B_CNTLn) Offsets 0x0094, LEGEND: R/W = Read/Write; R = Read only; -n = Value after reset Table 33. Packet Forwarding Register n for 8-Bit DeviceIDs (PF_8B_CNTLn) Field Descriptions Field 31–18 Reserved...
www.ti.com Logical/Transport Error Handling and Logging Error management registers allow detection and logging of logical/transport layer errors. The detectable errors are captured in the logical layer error detect CSR (see block(s) involved for each detectable error condition, and includes brief descriptions of the errors captured. Figure 44.
Logical/Transport Error Handling and Logging Table 34. Logical/Transport Layer Error Detect CSR (ERR_DET) Field Descriptions (continued) Field MSG_REQ_TIMEOUT PKT_RSPNS_TIMEOUT UNSOLICITED_RSPNS UNSUPPORTED_TRANS 21–8 Reserved RX_CPPI_SECURITY RX_IO_DMA_ACCESS 5–0 Reserved Serial RapidIO (SRIO) Value Description Message request timeout (endpoint device only) A timeout has not been detected by RXU. A timeout has been detected by the RXU.
www.ti.com Interrupt Conditions This section defines the CPU interrupt capabilities and requirements of the peripheral. CPU Interrupts The following interrupts are supported by the RIO peripheral. Error status: Event indicating that a run-time error was reached. The CPU should reset/resynchronize the peripheral.
Interrupt Conditions The DOORBELL packet’s 16-bit INFO field indicates which DOORBELL register interrupt bit to set. There are four DOORBELL registers, each currently with 16 bits, allowing 64 interrupt sources or circular buffers (see Table 23 for assignment of the 16 bits of DOORBELL_INFO field). Each bit can be assigned to any core as described by the Interrupt Condition Routing Registers.
www.ti.com Table 35. Interrupt Condition Status and Clear Bits Field Access Reset Value ICSx ICCx 4.3.1 Doorbell Interrupt Condition Status and Clear Registers The interrupt condition status registers (ICSRs) and the interrupt condition clear registers (ICCRs) for the four doorbells are shown in Figure 46 peripheral receives doorbell packets.
www.ti.com For transmission, the clearing of any ICSR bit is dependent on the CPU writing to the CP register for the queue (QUEUEn_TXDMA_CP). The CPU acknowledges the interrupt after reclaiming all available buffer descriptors by writing the CP value. This value is compared against the port written value in the CP register.
www.ti.com Table 36. Interrupt Conditions Shown in LSU_ICSR and Cleared With LSU_ICCR (continued) Associated LSU LSU1 LSU1 LSU1 LSU1 LSU1 LSU1 LSU1 4.3.4 Error, Reset, and Special Event Interrupt Condition Status and Clear Registers The ICSR and the ICCR for the SRIO ports are shown in nonreserved status and clear bits corresponds to a particular interrupt condition in one or more of the SRIO ports.
Interrupt Conditions The interrupt status bits found in the ERR_RST_EVNT (0x0270) can be cleared by writing to the ICCR register (0x0278) in the same manner as other interrupts. However, in order for new event detection and interrupt generation to occur for these special interrupts, additional register bits must be cleared. The following table notes the additional interrupt source register bits that need to be cleared and the appropriated sequence.
www.ti.com Table 38. Interrupt Clearing Sequence for Special Event Interrupts (continued) Interrupt Function Port 3 Error (TMS320TCI6482 Only) Device Reset Interrupt Condition Routing Registers The interrupt conditions are programmable to select the interrupt output that will be driven. Using the interrupt condition routing registers (ICRRs), software can independently route each interrupt request to any of the interrupt destinations supported by the device.
Interrupt Conditions When doorbell packets are received by the SRIO peripheral, these ICRRs route doorbell interrupt requests to interrupt destinations. For example, if ICS6 = 1 in DOORBELL2_ICSR and ICR6 = 0010b in DOORBELL2_ICRR, the interrupt request from Doorbell 2, bit 6 is sent to interrupt destination 2. Figure 54.
Interrupt Conditions each bit in the ISDR. Bits within the LSU interrupt condition status register (ICSR) are logically grouped for a given core and ORed together into a single bit (bit 31) of the decode register. Similarly, the bits within the Error, Reset, and Special Event ICSR are ORed together into bit 30 of the decode register.
www.ti.com Figure 61. Example Diagram of Interrupt Status Decode Register Mapping The following are suggestions for minimizing the number of register reads to identifying the interrupt source: Dedicate each doorbell ICSR to one core. The CPU can then determine the interrupt source from a single read of the decode register.
Interrupt Conditions immediately starts down-counting each time the CPU writes these registers. When the rate control counter register is written, and the counter value reaches zero (note that the CPU may write zero immediately for a zero count), the interrupt pulse generation logic is allowed to fire a single pulse if any bits in the corresponding ICSR register bits are set (or become set after the zero count is reached).
SRIO Registers SRIO Registers Introduction Table 40 lists the names and address offsets of the memory-mapped registers for the Serial RapidIO (SRIO) peripheral. See the device-specific data manual for the exact memory addresses of these registers. Offset Acronym 0000h 0004h 0020h PER_SET_CNTL 0030h...
www.ti.com Peripheral Identification Register (PID) The peripheral identification register (PID) is a read-only register that contains the ID and ID revision number for that peripheral. The PID stores version information used to identify the peripheral. Writes have no effect to this register. The values are hard coded and will not change from their reset state. The peripheral ID register (PID) is shown in Figure 63.
SRIO Registers Peripheral Control Register (PCR) The peripheral control register (PCR) contains a bit that enables or disables data flow in the logical layer of the entire peripheral. In addition, the PCR has emulation control bits that control the peripheral behavior during emulation halts.
www.ti.com Peripheral Settings Control Register (PER_SET_CNTL) The peripheral settings control register (PER_SET_CNTL) is shown in Table 43. For additional programming information, see Figure 65. Peripheral Settings Control Register (PER_SET_CNTL) (Address Offset 0020h) Reserved Reserved TX_PRI1_WM TX_PRI0_WM R/W-02h R/W-03h PRESCALER_SELECT R/W-0 LEGEND: R/W = Read/Write;...
Page 114
SRIO Registers Table 43. Peripheral Settings Control Register (PER_SET_CNTL) Field Descriptions (continued) Field 17–15 TX_PRI1_WM 14–12 TX_PRI0_WM 11–9 CBA_TRANS_PRI 1X_MODE 7–4 PRESCALER_SELECT Serial RapidIO (SRIO) Value Description 000b–111b Transmit credit threshold. Sets the required number of logical layer TX buffers needed to send priority 1 packets across the UDI. This is valid for all ports in 1x mode only.
Page 115
www.ti.com Table 43. Peripheral Settings Control Register (PER_SET_CNTL) Field Descriptions (continued) Field ENPLL4 ENPLL3 ENPLL2 ENPLL1 SPRUE13A – September 2006 Submit Documentation Feedback Value Description Not used. Should always be programmed as "0". See enable SERDES PLL. Not used. Should always be programmed as "0". See enable SERDES PLL.
SRIO Registers Peripheral Global Enable Register (GBL_EN) GBL_EN is implemented with a single enable bit for the entire SRIO peripheral. This bit is logically ORed with the reset input to the module and is fanned out to all logical blocks within the peripheral. GBL_EN is shown in Figure 66 and described in...
www.ti.com Peripheral Global Enable Status Register (GBL_EN_STAT) The peripheral global enable status register (GBL_EN_STAT) is shown in Table 45. For additional programming information, see Figure 67. Peripheral Global Enable Status Register (GBL_EN_STAT) - Address 0034h BLK6_EN_ BLK5_EN_ BLK4_EN_ STAT STAT STAT LEGEND: R = Read only;...
Page 118
SRIO Registers Table 45. Peripheral Global Enable Status Register (GBL_EN_STAT) Field Descriptions (continued) Field BLK0_EN_STAT GBL_EN_STAT Serial RapidIO (SRIO) Value Description Block 0 enable status. Logical block 0 is the set of memory-mapped registers (MMRs) for the SRIO peripheral. Logical block 0 is in reset with its clock off. Logical block 0 is enabled with its clock running.
www.ti.com Block n Enable Register (BLKn_EN) There are nine of these registers, one for each of nine logical blocks in the peripheral. The registers and the blocks they support are listed in shown in Figure 68 and described in Section 2.3.10.
SRIO Registers Block n Enable Status Register (BLKn_EN_STAT) There are nine of these registers, one for each of nine logical blocks in the peripheral. The registers and the blocks they support are listed in (BLKn_EN_STAT) is shown in information, see Section 2.3.10.
www.ti.com 5.11 Packet Forwarding Register n for 16-Bit Device IDs (PF_16B_CNTLn) There are four of these registers (see 16-bit DeviceIDs is shown in information, see Section 2.3.15 Register PF_16B_CNTL0 PF_16B_CNTL1 PF_16B_CNTL2 PF_16B_CNTL3 Figure 72. Packet Forwarding Register n for 16-Bit Device IDs (PF_16B_CNTLn) 16BIT_DEVID_UP_BOUND R/W-FFFFh LEGEND: R/W = Read/Write;...
SRIO Registers 5.12 Packet Forwarding Register n for 8-Bit Device IDs (PF_8B_CNTLn) There are four of these registers (see 16-bit DeviceIDs is shown in Section 2.3.15 and and Register PF_8B_CNTL0 PF_8B_CNTL1 PF_8B_CNTL2 PF_8B_CNTL3 Figure 73. Packet Forwarding Register n for 8-Bit Device IDs (PF_8B_CNTLn) LEGEND: R/W = Read/Write;...
www.ti.com 5.13 SERDES Receive Channel Configuration Register n (SERDES_CFGRXn_CNTL) There are four of these registers, to support four ports (see ). The general form for a SERDES receive channel configuration register is summarized by complete explanation of the programming of these registers. Table 56.
Page 126
SRIO Registers Table 57. SERDES Receive Channel Configuration Register n (SERDES_CFGRXn_CNTL) Field Field 15–14 13–12 ALIGN Reserved 10–8 TERM INVPAIR 6–5 RATE 4–2 BUSWIDTH Reserved ENRX CFGRX[22–19] 0000b 0001b 001xb 01xxb Serial RapidIO (SRIO) Descriptions (continued) Value Description Loss of signal. Enables loss of signal detection with 2 selectable thresholds. Disabled.
Page 127
www.ti.com CFGRX[22–19] 1000b 1001b 1010b 1011b 1100b 1101b 1110b 1111b SPRUE13A – September 2006 Submit Documentation Feedback Table 58. EQ Bits (continued) Low Freq Gain Zero Freq (at e Adaptive SRIO Registers (min)) 1084MHz 805MHz 573MHz 402MHz 304MHz 216MHz 156MHz 135MHz Serial RapidIO (SRIO)
SRIO Registers 5.14 SERDES Transmit Channel Configuration Register n (SERDES_CFGTXn_CNTL) There are four of these registers, to support four ports (see transmit channel configuration register is summarized by a complete explanation of the programming for these registers. Table 59. SERDES_CFGTXn_CNTL Registers and the Associated Ports Register SERDES_CFGTX0_CNTL SERDES_CFGTX1_CNTL...
SRIO Registers 5.15 SERDES Macro Configuration Register n (SERDES_CFGn_CNTL) There are four of these registers, to support four ports (see transmit channel configuration register is summarized by a complete explanation of the programming of this register. Table 63. SERDES_CFGn_CNTL Registers and the Associated Ports Register SERDES_CFG0_CNTL SERDES_CFG1_CNTL...
Page 131
www.ti.com Table 64. SERDES Macro Configuration Register n (SERDES_CFGn_CNTL) Field Descriptions Field Value 5–1 00000b 00001b 00010b 00011b 00100b 00101b 00110b 00111b 01000b 01001b 01010b 01011b 01100b 01111b 1xxxxb ENPLL SPRUE13A – September 2006 Submit Documentation Feedback (continued) Description PLL multiply. Select PLL multiply factors between 4 and 60. Reserved 12.5x Reserved...
SRIO Registers 5.16 DOORBELLn Interrupt Condition Status Register (DOORBELLn_ICSR) The four doorbell interrupts are mapped to these registers (see interrupt condition status register is shown in programming information, see Register DOORBELL0_ICSR DOORBELL1_ICSR DOORBELL2_ICSR DOORBELL3_ICSR Figure 77. Doorbell n Interrupt Condition Status Register (DOORBELLn_ICSR) ICS15 ICS14 ICS13...
www.ti.com 5.17 DOORBELLn Interrupt Condition Clear Register (DOORBELLn_ICCR) The four doorbells interrupts that are mapped are cleared by this register (see of a doorbell interrupt condition clear register is shown in additional programming information, see Register DOORBELL0_ICCR DOORBELL1_ICCR DOORBELL2_ICCR DOORBELL3_ICCR Figure 78.
SRIO Registers 5.18 RX CPPI Interrupt Status Register (RX_CPPI_ICSR) The bits in this register indicate any active interrupt requests from RX buffer descriptor queues. The RX CPPI interrupt status register (RX_CPPI_ICSR) is shown in additional programming information, see Figure 79. RX CPPI Interrupt Condition Status Register (RX_CPPI_ICSR) - Address Offset 0240h ICS15 ICS14 ICS13...
www.ti.com 5.19 RX CPPI Interrupt Clear Register (RX_CPPI_ICCR) This register is used to clear bits in RX_CPPI_ICSR to acknowledge interrupts from the RX buffer descriptor queues. The RX CPPI interrupt clear register (RX_CPPI_ICCR) is shown in described in Table 70. For additional programming information, see Figure 80.
SRIO Registers 5.20 TX CPPI Interrupt Status Register (TX_CPPI_ICSR) The bits in this register indicate any active interrupt requests from TX buffer descriptor queues. TX_CPPI_ICSR is shown in Figure 81. TX CPPI Interrupt Condition Status Register (TX_CPPI_ICSR) - Address Offset 0250h ICS15 ICS14 ICS13...
www.ti.com 5.21 TX CPPI Interrupt Clear Register (TX_CPPI_ICCR) This register is used to clear bits in TX_CPPI_ICSR to acknowledge interrupts from the TX buffer descriptor queues. TX_CPPI_ICCR is shown in Figure 82. TX CPPI Interrupt Condition Clear Register (TX_CPPI_ICCR) - Address Offset 0258h ICC15 ICC14 ICC13...
SRIO Registers 5.22 LSU Interrupt Condition Status Register (LSU_ICSR) Each of the status bits in this register indicates the occurrence of a particular type of transaction interrupt condition for a particular LSU. LSU_ICSR is shown in programming information, see Figure 83. LSU Interrupt Condition Status Register (LSU_ICSR) - Address Offset 0260h <--------------------------------- Bits for LSU4 --------------------------------->...
Page 139
www.ti.com Table 73. LSU Interrupt Condition Status Register (LSU_ICSR) Field Descriptions (continued) Field Value Description ICS19 LSU3 interrupt condition not detected. LSU3 interrupt condition detected. Transaction was not sent due to unsupported transaction type or invalid field encoding. ICS18 LSU3 interrupt condition not detected. LSU3 interrupt condition detected.
Page 140
SRIO Registers Table 73. LSU Interrupt Condition Status Register (LSU_ICSR) Field Descriptions (continued) Field Value Description ICS1 LSU1 interrupt condition not detected. LSU1 interrupt condition detected. Non-posted transaction received ERROR response, or error in response payload. ICS0 LSU1 interrupt condition not detected. LSU1 interrupt condition detected.
www.ti.com 5.23 LSU Interrupt Condition Clear Register (LSU_ICCR) Setting a bit in this register clears the corresponding bit in LSU_ICSR, to acknowledge the interrupt. LSU_ICCR is shown in Figure 84 Section 4.3.3. Figure 84. LSU Interrupt Condition Clear Register (LSU_ICCR) - Address Offset 0268h <--------------------------------- Bits for LSU4 --------------------------------->...
SRIO Registers 5.24 Error, Reset, and Special Event Interrupt Condition Status Register (ERR_RST_EVNT_ICSR) Each of the nonreserved bits in this register indicate the status of a particular interrupt condition in one or more of the SRIO ports. ERR_RST_EVNT_ICSR is shown in additional programming information, see Figure 85.
www.ti.com 5.25 Error, Reset, and Special Event Interrupt Condition Clear Register (ERR_RST_EVNT_ICCR) Each bit in this register is used to clear the corresponding status bit in ERR_RST_EVNT_ICSR. The field of ERR_RST_EVNT_ICCR are shown in information, see Section 4.3.4. Figure 86. Error, Reset, and Special Event Interrupt Condition Clear Register (ERR_RST_EVNT_ICCR) - Address Offset 0278h Reserved ICC11...
SRIO Registers 5.26 DOORBELLn Interrupt Condition Routing Registers (DOORBELLn_ICRR and DOORBELLn_ICRR2) When doorbell packets are received by the SRIO peripheral, these ICRRs route doorbell interrupt requests from the associated doorbell ICSR to user-selected interrupt destinations. Each of the four doorbells can be mapped to these registers (see field of either register.
www.ti.com 5.27 RX CPPI Interrupt Condition Routing Registers (RX_CPPI_ICRR and RX_CPPI_ICRR2) Figure 88 Table 79 summarize the ICRRs for the RXU. These registers route queue interrupts to interrupt destinations. For example, if ICS6 = 1 in RX_CPPI_ICSR and ICR6 = 0010b in RX_CPPI_ICRR, the interrupt request from RX buffer descriptor queue 6 is sent to interrupt destination 2.
SRIO Registers 5.28 TX CPPI Interrupt Condition Routing Registers (TX_CPPI_ICRR and TX_CPPI_ICRR2) Figure 89 Table 80 summarize the ICRRs for the TXU. These registers route queue interrupts to interrupt destinations. For example, if ICS6 = 1 in TX_CPPI_ICSR and ICR6 = 0011b in TX_CPPI_ICRR, the interrupt request from TX buffer descriptor queue 6 is sent to interrupt destination 3.
www.ti.com 5.29 LSU Interrupt Condition Routing Registers (LSU_ICRR0–LSU_ICRR3) Figure 90 shows the ICRRs for the LSU interrupt requests, and an ICRx field in any of the four registers. These registers route LSU interrupt requests from LSU_ICSR to interrupt destinations. For example, if ICS4 = 1 in LSU_ICSR and ICR4 = 0000b in LSU_ICRR0, LSU1 has generated a transaction-timeout interrupt request, and that request is routed to interrupt destination 0.
SRIO Registers Table 81. LSU Interrupt Condition Routing Register Field Descriptions Field Value Description ICRx Interrupt condition routing. Routes the associated LSU interrupt request to one of eight interrupt (x = 0 to 31) destinations (INTDST0–INTDST7). Bits ICR0–ICR7 are for LSU1; bits ICR8–ICR15, for LSU2; bits ICR16–ICR23, for LSU3;...
www.ti.com 5.30 Error, Reset, and Special Event Interrupt Condition Routing Registers (ERR_RST_EVNT_ICRR, ERR_RST_EVNT_ICRR2, and ERR_RST_EVNT_ICRR3) The ICRRs shown in Figure 91 destinations. For example, if ICS8 = 1 in ERR_RST_EVNT_ICSR and ICR8 = 0001b in ERR_RST_EVNT_ICRR2, port 0 has generated an error interrupt request, and that request is routed to interrupt destination 1.
SRIO Registers 5.31 Interrupt Status Decode Register (INTDSTn_DECODE) There are eight of these registers, one for each interrupt destination (see shown in Figure 92 and described in register only if the ICRRs routes the interrupt source to the corresponding physical interrupt. Each status decode bit is a logical OR of multiple interrupt sources that are mapped to the same bit.
www.ti.com Table 84. Interrupt Status Decode Register (INTDSTn_DECODE) Field Descriptions (continued) Field Value Description ISD27 No interrupt request routed to this bit. Interrupt request detected. Possible interrupt sources: TX buffer descriptor queue 4 (bit 4 of TX_CPPI_ICSR) RX buffer descriptor queue 4 (bit 4 of RX_CPPI_ICSR) ISD26 No interrupt request routed to this bit.
SRIO Registers Table 84. Interrupt Status Decode Register (INTDSTn_DECODE) Field Descriptions (continued) Field Value Description ISD15 No interrupt request routed to this bit. Interrupt request detected. Possible interrupt sources: Doorbell 0, bit 15 (bit 15 of DOORBELL0_ICSR) Doorbell 1, bit 15 (bit 15 of DOORBELL1_ICSR) Doorbell 2, bit 15 (bit 15 of DOORBELL2_ICSR) Doorbell 3, bit 15 (bit 15 of DOORBELL3_ICSR) ISD14...
Page 153
www.ti.com Table 84. Interrupt Status Decode Register (INTDSTn_DECODE) Field Descriptions (continued) Field Value Description ISD7 No interrupt request routed to this bit. Interrupt request detected. Possible interrupt sources: Doorbell 0, bit 7 (bit 7 of DOORBELL0_ICSR) Doorbell 1, bit 7 (bit 7 of DOORBELL1_ICSR) Doorbell 2, bit 7 (bit 7 of DOORBELL2_ICSR) Doorbell 3, bit 7 (bit 7 of DOORBELL3_ICSR) ISD6...
SRIO Registers 5.32 INTDSTn Interrupt Rate Control Register (INTDSTn_RATE_CNTL) There are eight interrupt rate control registers, one for each interrupt destination (see Table 86 provide a general description for an interrupt rate control register. These registers are used to set the rate at which an interrupt can be generated for each interrupt destination. A write to one of the registers reloads a counter and immediately starts the counter decrementing.
www.ti.com 5.33 LSUn Control Register 0 (LSUn_REG0) There are four of these registers, one for each LSU (see control register 0 is shown in Section 2.3.3. Table 87. LSUn_REG0 Registers and the Associated LSUs Register LSU1_REG0 LSU2_REG0 LSU3_REG0 LSU4_REG0 Figure 94. LSUn Control Register 0 (LSUn_REG0) LEGEND: R/W = Read/Write;...
SRIO Registers 5.34 LSUn Control Register 1 (LSUn_REG1) There are four of these registers, one for each LSU (see ). This register's content is shown in and described in Table 90. For additional programming see Table 89. LSUn_REG1 Registers and the Associated LSUs Register LSU1_REG1 LSU2_REG1...
www.ti.com 5.35 LSUn Control Register 2 (LSUn_REG2) There are four of these registers, one for each LSU (see and described in Table 92. For additional programming see Table 91. LSUn_REG2 Registers and the Associated LSUs Register LSU1_REG2 LSU2_REG2 LSU3_REG2 LSU4_REG2 Figure 96.
SRIO Registers 5.36 LSUn Control Register 3 (LSUn_REG3) There are four of these registers, one for each LSU (see and described in Table 94. For additional programming see Table 93. LSUn_REG3 Registers and the Associated LSUs Register LSU1_REG3 LSU2_REG3 LSU3_REG3 LSU4_REG3 Figure 97.
www.ti.com 5.37 LSUn Control Register 4 (LSUn_REG4) There are four of these registers, one for each LSU (see and described in Table 96. For additional programming see Table 95. LSUn_REG4 Registers and the Associated LSUs Register LSU1_REG4 LSU2_REG4 LSU3_REG4 LSU4_REG4 Figure 98.
SRIO Registers 5.38 LSUn Control Register 5 (LSUn_REG5) There are four of these registers, one for each LSU (see and described in Table 98. For additional programming see Table 97. LSUn_REG5 Registers and the Associated LSUs Register LSU1_REG5 LSU2_REG5 LSU3_REG5 LSU4_REG5 Figure 99.
www.ti.com 5.39 LSUn Control Register 6 (LSUn_REG6) There are four of these registers, one for each LSU (see and described in Table 100. For additional programming see Table 99. LSUn_REG6 Registers and the Associated LSUs Register LSU1_REG6 LSU2_REG6 LSU3_REG6 LSU4_REG6 Figure 100.
SRIO Registers 5.40 LSUn Congestion Control Flow Mask Register (LSUn_FLOW_MASKS) There are four of these registers, one for each LSU (see LSUn_FLOW_MASKS register are summarized by within each FLOW_MASK field are summarized by Section 2.3.8. Table 101. LSUn_FLOW_MASKS Registers and the Associated LSUs Register LSU1_FLOW_MASKS LSU2_FLOW_MASKS...
www.ti.com Table 103. LSUn FLOW_MASK Fields (continued) Field Value Description LSUn does not support Flow 8 from table entry LSUn supports Flow 8 from table entry LSUn does not support Flow 7 from table entry LSUn supports Flow 7 from table entry LSUn does not support Flow 6 from table entry LSUn supports Flow 6 from table entry LSUn does not support Flow 5 from table entry...
SRIO Registers 5.41 Queue n Transmit DMA Head Descriptor Pointer Register (QUEUEn_TXDMA_HDP) There are sixteen of these registers (see described in Table 105. For additional programming information, see Table 104. QUEUEn_TXDMA_HDP Registers Register QUEUE0_TXDMA_HDP QUEUE1_TXDMA_HDP QUEUE2_TXDMA_HDP QUEUE3_TXDMA_HDP QUEUE4_TXDMA_HDP QUEUE5_TXDMA_HDP QUEUE6_TXDMA_HDP QUEUE7_TXDMA_HDP QUEUE8_TXDMA_HDP QUEUE9_TXDMA_HDP...
www.ti.com 5.42 Queue n Transmit DMA Completion Pointer Register (QUEUEn_TXDMA_CP) There are sixteen of these registers (see described in Table 107. For additional programming information, see Register QUEUE0_TXDMA_CP QUEUE1_TXDMA_CP QUEUE2_TXDMA_CP QUEUE3_TXDMA_CP QUEUE4_TXDMA_CP QUEUE5_TXDMA_CP QUEUE6_TXDMA_CP QUEUE7_TXDMA_CP QUEUE8_TXDMA_CP QUEUE9_TXDMA_CP QUEUE10_TXDMA_CP QUEUE11_TXDMA_CP QUEUE12_TXDMA_CP QUEUE13_TXDMA_CP QUEUE14_TXDMA_CP QUEUE15_TXDMA_CP...
SRIO Registers 5.43 Queue n Receive DMA Head Descriptor Pointer Register (QUEUEn_RXDMA_HDP) There are sixteen of these registers (see described in Table 109. For additional programming information, see Table 108. QUEUEn_RXDMA_HDP Registers Register QUEUE0_RXDMA_HDP QUEUE1_RXDMA_HDP QUEUE2_RXDMA_HDP QUEUE3_RXDMA_HDP QUEUE4_RXDMA_HDP QUEUE5_RXDMA_HDP QUEUE6_RXDMA_HDP QUEUE7_RXDMA_HDP QUEUE8_RXDMA_HDP QUEUE9_RXDMA_HDP...
www.ti.com 5.44 Queue n Receive DMA Completion Pointer Register (QUEUEn_RXDMA_CP) There are sixteen of these registers (see described in Table 111. For additional programming information, see Register QUEUE0_RXDMA_CP QUEUE1_RXDMA_CP QUEUE2_RXDMA_CP QUEUE3_RXDMA_CP QUEUE4_RXDMA_CP QUEUE5_RXDMA_CP QUEUE6_RXDMA_CP QUEUE7_RXDMA_CP QUEUE8_RXDMA_CP QUEUE9_RXDMA_CP QUEUE10_RXDMA_CP QUEUE11_RXDMA_CP QUEUE12_RXDMA_CP QUEUE13_RXDMA_CP QUEUE14_RXDMA_CP QUEUE15_RXDMA_CP...
SRIO Registers 5.45 Transmit Queue Teardown Register (TX_QUEUE_TEAR_DOWN) Each bit in this register corresponds to one of the 16 TX buffer descriptor queues. If a 1 is written to a bit, the teardown process is initiated for the associated queue. TX_QUEUE_TEAR_DOWN is shown in Figure 107 and described in Figure 107.
www.ti.com 5.46 Transmit CPPI Supported Flow Mask Registers (TX_CPPI_FLOW_MASKS[0–7]) Each of the eight TX CPPI flow mask registers holds the flow masks for two TX descriptor buffer queues (see Table 113). Figure 108 Each bit of a flow mask selects or deselects a flow for the associated TX queue (see additional programming information, see Table 113.
Page 171
www.ti.com Table 114. TX Queue n FLOW_MASK Field Descriptions (continued) Field Value Description FL12 Queue n does not support Flow 12 from table entry Queue n supports Flow 12 from table entry FL11 Queue n does not support Flow 11 from table entry Queue n supports Flow 11 from table entry FL10 Queue n does not support Flow 10 from table entry...
SRIO Registers 5.47 Receive Queue Teardown Register (RX_QUEUE_TEAR_DOWN) Each of this register's bits corresponds to one of the 16 RX buffer descriptor queues. If a 1 is written to a bit, the teardown process is started for the associated queue. RX_QUEUE_TEAR_DOWN is shown in Figure 110 and described in Figure 110.
www.ti.com 5.48 Receive CPPI Control Register (RX_CPPI_CNTL) Each bit in this register indicates whether the associated RX buffer descriptor queue must receive messages in the order the source device attempts to transmit them. RX_CPPI_CNTL is shown in and described in Table 116.
SRIO Registers 5.49 Transmit CPPI Weighted Round Robin Control Registers (TX_QUEUE_CNTL[0–3]) The transmission order among TX buffer descriptor queues is based on the programmable weighted round-robin scheme explained in mappers to determine the order in which the queues are serviced and how many messages are handled in each queue during each time around the round-robin cycle.
www.ti.com 5.50 Mailbox to Queue Mapping Registers (RXU_MAP_Ln and RXU_MAP_Hn) Messages addressed to any of the 64 mailbox locations can be received on any of the RapidIO ports simultaneously. Packets are handled sequentially in order of receipt. A block of 32 mappers directs the inbound messages to the appropriate RX queues.
www.ti.com Figure 113. Mailbox to Queue Mapping Register Pair Mailbox to Queue Mapping Register L n (RXU_MAP_L n ) 30 29 LETTER_MASK MAILBOX_MASK R/W-11 R/W-111111 Mailbox to Queue Mapping Register H n (RXU_MAP_H n ) 10 9 Reserved LEGEND: R/W = Read/Write; R = Read only; -n = Value after reset Table 119.
Page 180
SRIO Registers Table 120. Mailbox-to-Queue Mapping Register Hn (RXU_MAP_Hn) Field Descriptions (continued) Field 7–6 Reserved 5–2 QUEUE_ID PROMISCUOUS SEGMENT_MAPPING Serial RapidIO (SRIO) Value Description These read-only bits return 0s when read. 0–15 Queue identification number. This field selects which of the 16 RX buffer queues is associated with mapper n.
www.ti.com 5.51 Flow Control Table Entry Register n (FLOW_CNTLn) There are sixteen of these registers (see Table 122. For additional programming information, see Register FLOW_CNTL0 FLOW_CNTL1 FLOW_CNTL2 FLOW_CNTL3 FLOW_CNTL4 FLOW_CNTL5 FLOW_CNTL6 FLOW_CNTL7 FLOW_CNTL8 FLOW_CNTL9 FLOW_CNTL10 FLOW_CNTL11 FLOW_CNTL12 FLOW_CNTL13 FLOW_CNTL14 FLOW_CNTL15 Figure 114.
SRIO Registers 5.52 Device Identity CAR (DEV_ID) The device identity CAR (DEV_ID) is shown in effect to this register. The values are hard coded and will not change from their reset state. Figure 115. Device Identity CAR (DEV_ID) - Address Offset 1000h DEVICEIDENTITY R-0000h LEGEND: R = Read only;...
www.ti.com 5.53 Device Information CAR (DEV_INFO) The device information CAR (DEV_INFO) is shown in no effect to this register. The values are hard coded and will not change from their reset state. Figure 116. Device Information CAR (DEV_INFO) - Address Offset 1004h LEGEND: R = Read only;...
SRIO Registers 5.54 Assembly Identity CAR (ASBLY_ID) The assembly identity CAR (ASBLY_ID) is shown in no effect to this register. The values are hard coded and will not change from their reset state. Figure 117. Assembly Identity CAR (ASBLY_ID) - Address Offset 1008h ASSY_IDENTITY R-0000h LEGEND: R = Read only;...
www.ti.com 5.55 Assembly Information CAR (ASBLY_INFO) The assembly information CAR (ASBLY_INFO) is shown in register is used by SERDES vendor to designate endpoints among the various function blocks of registers. Writes have no effect to this register. The values are hard coded and will not change from their reset state.
SRIO Registers 5.56 Processing Element Features CAR (PE_FEAT) The processing element features CAR (PE_FEAT) is shown in Figure 119. Processing Element Features CAR (PE_FEAT) - Address Offset 1010h BRIDGE MEMORY PROCESSOR FLOW_ RETRANSMIT_ CONTROL_ SUPPRESS SUPPORT LEGEND: R = Read only; -n = Value after reset Table 127.
Page 187
www.ti.com Table 127. Processing Element Features CAR (PE_FEAT) Field Descriptions (continued) Field 2–0 EXTENDED_ADDRESSING_SUPPORT SPRUE13A – September 2006 Submit Documentation Feedback Value Description Indicates the number address bits supported by the PE both as a source and target of an operation. All PEs shall at minimum support 34 bit addresses.
www.ti.com 5.58 Destination Operations CAR (DEST_OP) The destination operations CAR (DEST_OP) is shown in Figure 121. Destination Operations CAR (DEST_OP) - Address Offset 101Ch READ WRITE STREAM_WRITE ATOMIC_ ATOMIC_ ATOMIC_ INCRMNT DCRMNT LEGEND: R = Read only; -n = Value after reset Table 129.
SRIO Registers 5.59 Processing Element Logical Layer Control CSR (PE_LL_CTL) The processing element logical layer control CSR (PE_LL_CTL) is shown in Table 130. Figure 122. Processing Element Logical Layer Control CSR (PE_LL_CTL) - Address Offset 104Ch LEGEND: R/W = Read/Write; R = Read only; -n = Value after reset Table 130.
www.ti.com 5.60 Local Configuration Space Base Address 0 CSR (LCL_CFG_HBAR) The local configuration space base address 0 CSR (LCL_CFG_HBAR) is shown in described in Table 131. Figure 123. Local Configuration Space Base Address 0 CSR (LCL_CFG_HBAR) - Address Offset Reserved LEGEND: R = Read only;...
SRIO Registers 5.61 Local Configuration Space Base Address 1 CSR (LCL_CFG_BAR) The local configuration space base address 1 CSR (LCL_CFG_BAR) is shown in described in Table 132. Figure 124. Local Configuration Space Base Address 1 CSR (LCL_CFG_BAR) - Address Offset LEGEND: R = Read only;...
www.ti.com 5.62 Base Device ID CSR (BASE_ID) The base device ID CSR (BASE_ID) is shown in Figure 125. Base Device ID CSR (BASE_ID) - Address Offset 1060h Reserved R-00h LEGEND: R/W = Read/Write; R = Read only; -n = Value after reset Table 133.
SRIO Registers 5.63 Host Base Device ID Lock CSR (HOST_BASE_ID_LOCK) See Section 2.4.2 of the RapidIO Common Transport Specification for a description of this register. It provides a lock function that is write-once/reset-able. The host base device ID lock CSR (HOST_BASE_ID_LOCK) is shown in Figure 126.
www.ti.com 5.64 Component Tag CSR (COMP_TAG) The component Tag CSR (COMP_TAG) is shown in Figure 127. Component Tag CSR (COMP_TAG) - Address Offset 106Ch LEGEND: R/W = Read/Write; -n = Value after reset Table 135. Component Tag CSR (COMP_TAG) Field Descriptions Field 31–0 COMPONENT_TAG...
SRIO Registers 5.65 1x/4x LP Serial Port Maintenance Block Header Register (SP_MB_HEAD) The 1x/4x LP_Serial port maintenance block header register (SP_MB_HEAD) is shown in described in Table 136. Figure 128. 1x/4x LP_Serial Port Maintenance Block Header Register (SP_MB_HEAD) - Address EF_PTR R-1000h LEGEND: R = Read only;...
www.ti.com 5.66 Port Link Time-Out Control CSR (SP_LT_CTL) The port link time-out control CSR (SP_LT_CTL) is shown in Figure 129. Port Link Time-Out Control CSR (SP_LT_CTL) - Address Offset 1120h TIMEOUT_VALUE R/W-FFFFFFh LEGEND: R/W = Read/Write; R = Read only; -n = Value after reset Table 137.
SRIO Registers 5.67 Port Response Time-Out Control CSR (SP_RT_CTL) The port response time-out control CSR (SP_RT_CTL) is shown in For additional programming information, see Figure 130. Port Response Time-Out Control CSR (SP_RT_CTL) - Address Offset 1124h TIMEOUT_VALUE RW-FFFFFFh LEGEND: R/W = Read/Write; R = Read only; -n = Value after reset Table 138.
www.ti.com 5.68 Port General Control CSR (SP_GEN_CTL) The port general control CSR (SP_GEN_CTL) is shown in Figure 131. Port General Control CSR (SP_GEN_CTL) - Address Offset 113Ch MASTER_ HOST DISCOVERED ENABLE R/W-0 R/W-0 R/W-0 LEGEND: R/W = Read/Write; R = Read only; -n = Value after reset Table 139.
SRIO Registers 5.69 Port Link Maintenance Request CSR n (SPn_LM_REQ) Each of the four ports is supported by a register of this type (see Figure 132 and described in Table 140. SPn_LM_REQ Registers and the Associated Ports Register SP0_LM_REQ SP1_LM_REQ SP2_LM_REQ SP3_LM_REQ Figure 132.
www.ti.com 5.70 Port Link Maintenance Response CSR n (SPn_LM_RESP) Each of the four ports is supported by a register of this type (see response CSR n (SPn_LM_RESP) is shown in Table 142. SPn_LM_RESP Registers and the Associated Ports Register SP0_LM_RESP SP1_LM_RESP SP2_LM_RESP SP3_LM_RESP...
SRIO Registers 5.71 Port Local AckID Status CSR n (SPn_ACKID_STAT) Each of the four ports is supported by a register of this type (see CSR n (SPn_ACKID_STAT) is shown in Table 144. SPn_ACKID_STAT Registers and the Associated Ports Register SP0_ACKID_STAT SP1_ACKID_STAT SP2_ACKID_STAT SP3_ACKID_STAT...
www.ti.com 5.72 Port Error and Status CSR n (SPn_ERR_STAT) Each of the four ports is supported by a register of this type (see CSR n (SPn_ERR_STAT) is shown in Table 146. SPn_ERR_STAT Registers and the Associated Ports Register SP0_ERR_STAT SP1_ERR_STAT SP2_ERR_STAT SP3_ERR_STAT Figure 135.
Page 204
SRIO Registers Table 147. Port Error and Status CSR n (SPn_ERR_STAT) Field Descriptions (continued) Field 23–21 Reserved OUTPUT_RETRY_ENC OUTPUT_RETRIED OUTPUT_RETRY_STP OUTPUT_ERROR_ENC OUTPUT_ERROR_STP 15–11 Reserved INPUT_RETRY_STP INPUT_ERROR_ENC INPUT_ERROR_STP 7–5 Reserved PORT_WRITE_PND Reserved PORT_ERROR Serial RapidIO (SRIO) Value Description These read-only bits return 0s when read. Output retry condition encountered.
Page 205
www.ti.com Table 147. Port Error and Status CSR n (SPn_ERR_STAT) Field Descriptions (continued) Field PORT_OK PORT_UNINITIALIZED SPRUE13A – September 2006 Submit Documentation Feedback Value Description Port OK. This bit is a read-only bit. Port not-OK condition Port OK condition. The input and output ports are initialized, and the port is exchanging error-free control symbols with the attached device.
SRIO Registers 5.73 Port Control CSR n (SPn_CTL) Each of the four ports is supported by a register of this type (see (SPn_CTL) is shown in Figure 136 are 2 registers that need to be programmed. The SP_IP_MODE (offset 0x12004) bits 31-30 are set to be 1x/4p or 4 ports (1x mode each).
Page 207
www.ti.com Table 149. Port Control CSR n (SPn_CTL) Field Descriptions (continued) Field 26–24 PORT_WIDTH_OVERRIDE PORT_DISABLE OUTPUT_PORT_ENABLE INPUT_PORT_ENABLE ERROR_CHECK_DISABLE MULTICAST_PARTICIPANT 18–4 Reserved STOP_PORT_FLD_ENC_ENABLE DROP_PACKET_ENABLE PORT_LOCKOUT SPRUE13A – September 2006 Submit Documentation Feedback Value Description Port width override. This read-only field is available as a software means to override the hardware width.
Page 208
SRIO Registers Table 149. Port Control CSR n (SPn_CTL) Field Descriptions (continued) Field PORT_TYPE Serial RapidIO (SRIO) Value Description Port type. This read-only bit indicates that the port is a serial port rather than a parallel port. www.ti.com SPRUE13A – September 2006 Submit Documentation Feedback...
SRIO Registers 5.75 Logical/Transport Layer Error Detect CSR (ERR_DET) This register allows for the detection of logical/transport layer errors. The detectable errors are captured in the fields shown in Figure 138 Section 3 Figure 138. Logical/Transport Layer Error Detect CSR (ERR_DET) - Address Offset 2008h IO_ERR_ MSG_ERR_ Reserved...
Page 211
www.ti.com Table 151. Logical/Transport Layer Error Detect CSR (ERR_DET) Field Descriptions (continued) Field MSG_REQ_TIMEOUT PKT_RSPNS_TIMEOUT UNSOLICITED_RSPNS UNSUPPORTED_TRANS 21–8 Reserved RX_CPPI_SECURITY RX_IO_DMA_ACCESS 5–0 Reserved SPRUE13A – September 2006 Submit Documentation Feedback Value Description Message request timeout (endpoint device only) A timeout has not been detected by RXU. A timeout has been detected by the RXU.
SRIO Registers 5.77 Logical/Transport Layer High Address Capture CSR (H_ADDR_CAPT) The logical/transport layer high address capture CSR (H_ADDR_CAPT) is shown in described in Table 153. Figure 140. Logical/Transport Layer High Address Capture CSR (H_ADDR_CAPT) - Address Offset LEGEND: R = Read only; -n = Value after reset Table 153.
SRIO Registers 5.81 Port-Write Target Device ID CSR (PW_TGT_ID) The port-write target device ID CSR (PW_TGT_ID) is shown in For additional programming information, see Figure 144. Port-Write Target Device ID CSR (PW_TGT_ID) - Address Offset 2028h DEVICEID_MSB R/W-00h LEGEND: R/W = Read/Write; R = Read only; -n = Value after reset Table 157.
www.ti.com 5.82 Port Error Detect CSR n (SPn_ERR_DET) Each of the four ports is supported by a register of this type (see (SPn_ERR_DET) is shown in Table 158. SPn_ERR_DET Registers and the Associated Ports Register SP0_ERR_DET SP1_ERR_DET SP2_ERR_DET SP3_ERR_DET Figure 145. Port Error Detect CSR n (SPn_ERR_DET) ERR_IMP_ SPECIFIC R/W-0...
Page 220
SRIO Registers Table 159. Port Error Detect CSR n (SPn_ERR_DET) Field Descriptions (continued) Field RCVD_PKT_NOT_ACCPT PKT_UNEXPECTED_ACKID RCVD_PKT_WITH_BAD_CRC RCVD_PKT_OVER_276B 16–6 Reserved NON_OUTSTANDING_ACKID PROTOCOL_ERROR Reserved DELINEATION_ERROR UNSOLICITED_ACK_CNTL_SYM LINK_TIMEOUT Serial RapidIO (SRIO) Value Description Packet-not-accepted control symbol The port did not receive a packet-not-accepted acknowledge control symbol.
www.ti.com 5.83 Port Error Rate Enable CSR n (SPn_RATE_EN) Each of the four ports is supported by a register of this type (see CSR n (SPn_RATE_EN) is shown in Table 160. SPn_RATE_EN Registers and the Associated Ports Register SP0_RATE_EN SP1_RATE_EN SP2_RATE_EN SP3_RATE_EN Figure 146.
Page 222
SRIO Registers Table 161. Port Error Rate Enable CSR n (SPn_RATE_EN) Field Descriptions (continued) Field PKT_UNEXPECTED_ACKID_EN RCVED_PKT_WITH_BAD_CRC_EN RCVED_PKT_OVER_276B_EN 16–6 Reserved NON_OUTSTANDING_ACKID_EN PROTOCOL_ERROR_EN Reserved DELINEATION_ERROR_EN UNSOLICITED_ACK_CNTL_SYM_EN LINK_TIMEOUT_EN Serial RapidIO (SRIO) Value Description Rate counting enable for packets with unexpected ackIDs Disable error rate counting of packets with unexpected/out-of-sequence ackIDs Enable error rate counting of packets with unexpected/out-of-sequence ackIDs.
www.ti.com 5.84 Port n Attributes Error Capture CSR 0 (SPn_ERR_ATTR_CAPT_DBG0) Each of the four ports is supported by a register of this type (see ). The port n attributes error capture CSR 0 (SPn_ERR_ATTR_CAPT_DBG0) is shown in Table 162. SPn_ERR_ATTR_CAPT_DBG0 Registers and the Associated Ports Register SP0_ERR_ATTR_CAPT_DBG0 SP1_ERR_ATTR_CAPT_DBG0...
SRIO Registers 5.85 Port n Error Capture CSR 1 (SPn_ERR_CAPT_DBG1) Each of the four ports is supported by a register of this type (see shown in Figure 148 and described in Table 164. SPn_ERR_CAPT_DBG1 Registers and the Associated Ports Register SP0_ERR_CAPT_DBG1 SP1_ERR_CAPT_DBG1 SP2_ERR_CAPT_DBG1...
www.ti.com 5.86 Port n Error Capture CSR 2 (SPn_ERR_CAPT_DBG2) Each of the four ports is supported by a register of this type (see shown in Figure 149 and described in Table 166. SPn_ERR_CAPT_DBG2 Registers and the Associated Ports Register SP0_ERR_CAPT_DBG2 SP1_ERR_CAPT_DBG2 SP2_ERR_CAPT_DBG2 SP3_ERR_CAPT_DBG2...
SRIO Registers 5.87 Port n Error Capture CSR 3 (SPn_ERR_CAPT_DBG3) Each of the four ports is supported by a register of this type (see shown in Figure 150 and described in Table 168. SPn_ERR_CAPT_DBG3 Registers and the Associated Ports Register SP0_ERR_CAPT_DBG3 SP1_ERR_CAPT_DBG3 SP2_ERR_CAPT_DBG3...
www.ti.com 5.88 Port n Error Capture CSR 4 (SPn_ERR_CAPT_DBG4) Each of the four ports is supported by a register of this type (see symbol error capture CSR 4 (SPn_ERR_CAPT_DBG4) is shown in Table 171. Table 170. SPn_ERR_CAPT_DBG4 Registers and the Associated Ports Register SP0_ERR_CAPT_DBG4 SP1_ERR_CAPT_DBG4...
SRIO Registers 5.89 Port Error Rate CSR n (SPn_ERR_RATE) Each of the four ports is supported by a register of this type (see Figure 152 and described in Table 172. SPn_ERR_RATE Registers and the Associated Ports Register SP0_ERR_RATE SP1_ERR_RATE SP2_ERR_RATE SP3_ERR_RATE Figure 152.
www.ti.com 5.90 Port Error Rate Threshold CSR n (SPn_ERR_THRESH) Each of the four ports is supported by a register of this type (see ). The port error rate threshold CSR n (SPn_ERR_THRESH) is shown in Table 174. SPn_ERR_THRESH Registers and the Associated Ports Register SP0_ERR_THRESH SP1_ERR_THRESH...
SRIO Registers 5.91 Port IP Discovery Timer for 4x Mode Register (SP_IP_DISCOVERY_TIMER) The port IP discovery timer for 4x mode register (SP_IP_DISCOVERY_TIMER) is shown in and described in Table 176. Figure 154. Port IP Discovery Timer for 4x Mode Register (SP_IP_DISCOVERY_TIMER) - Address 28 27 DISCOVERY_TIMER R/W-9h...
www.ti.com 5.92 Port IP Mode CSR (SP_IP_MODE) The port IP mode CSR (SP_IP_MODE) is shown in programming information, see Figure 155. Port IP Mode CSR (SP_IP_MODE) - Address Offset 12004h IDLE_ SP_MODE ERR_ FIFO_ BYPASS R/W-0 R/W-0 R/W-0 R/W-0 Reserved LEGEND: R/W = Read/Write;...
Page 232
SRIO Registers Table 177. Port IP Mode CSR (SP_IP_MODE) Field Descriptions (continued) Field Value RST_EN RST_CS PW_EN PW_IRQ Serial RapidIO (SRIO) Description Reset Interrupt Enable. If enabled, the interrupt signal is High when the 4 reset control symbols are received in a sequence Reset interrupt disable Reset interrupt enable Reset received status bit.
www.ti.com 5.93 Port IP Prescaler Register (IP_PRESCAL) The port IP prescaler register (IP_PRESCAL) is shown in register defines a prescaler for different frequencies of the DMA clock. The purpose of this register is to keep the timers of SP_LT_CTL (offset 01120h), SP0_ERR_RATE through SP3_ERR_RATE (offsets 02068h, 020A8h, 020E8, and 02128h), SP_IP_DISCOVERY_TIMER (offset 12000h), and SP0_SILENCE_TIMER through SP3_SILENCE_TIMER (offsets 14008h, 14108h, 14208h, and 14308h) within the same range for different frequencies of the DMA clock.
SRIO Registers 5.94 Port-Write-In Capture CSRs (SP_IP_PW_IN_CAPT[0–3]) Four registers are used to capture the incoming 128-bit payload of a Port-Write. These four registers are shown in Figure 157. As can be seen in words of the payload. Port-Write-In Capture CSR 0 (SP_IP_PW_IN_CAPT0) - Address Offset 12010h Port-Write-In Capture CSR 1 (SP_IP_PW_IN_CAPT1) - Address Offset 12014h Port-Write-In Capture CSR 0 (SP_IP_PW_IN_CAPT0) - Address Offset 12018h Port-Write-In Capture CSR 0 (SP_IP_PW_IN_CAPT0) - Address Offset 1201Ch...
www.ti.com 5.95 Port Reset Option CSR n (SPn_RST_OPT) Each of the four ports is supported by a register of this type (see Figure 158 and described in Table 180. SPn_RST_OPT Registers and the Associated Ports Register SP0_RST_OPT SP1_RST_OPT SP2_RST_OPT SP3_RST_OPT Figure 158.
SRIO Registers 5.96 Port Control Independent Register n (SPn_CTL_INDEP) Each of the four ports is supported by a register of this type (see register n (SPn_CTL_INDEP) is shown in Table 182. SPn_CTL_INDEP Registers and the Associated Ports Register SP0_CTL_INDEP SP1_CTL_INDEP SP2_CTL_INDEP SP3_CTL_INDEP Figure 159.
Page 237
www.ti.com Table 183. Port Control Independent Register n (SPn_CTL_INDEP) Field Descriptions (continued) Field DEBUG SEND_DBG_PKT ILL_TRANS_EN ILL_TRANS_ERR 19–18 Reserved MAX_RETRY_EN MAX_RETRY_ERR 15–8 MAX_RETRY_THR IRQ_EN IRQ_ERR 5–0 Reserved SPRUE13A – September 2006 Submit Documentation Feedback Value Description Mode of operation. Normal mode Debug mode.
SRIO Registers 5.97 Port Silence Timer n Register (SPn_SILENCE_TIMER) Each of the four ports is supported by a register of this type (see register (SPn_SILENCE_TIMER) is shown in Table 184. SPn_SILENCE_TIMER Registers and the Associated Ports Register SP0_SILENCE_TIMER SP1_SILENCE_TIMER SP2_SILENCE_TIMER SP3_SILENCE_TIMER Figure 160.
www.ti.com 5.98 Port Multicast-Event Control Symbol Request Register n (SPn_MULT_EVNT_CS) Each of the four ports is supported by a register of this type (see control symbol request register n (SPn_MULT_EVNT_CS) is shown in Table 187. Table 186. SPn_MULT_EVNT_CS Registers and the Associated Ports Register SP0_MULT_EVNT_CS SP1_MULT_EVNT_CS...
SRIO Registers 5.99 Port Control Symbol Transmit n Register (SPn_CS_TX) Each of the four ports is supported by a register of this type (see transmit n register (SPn_CS_TX) is shown in Table 188. SPn_CS_TX Registers and the Associated Ports Register SP0_CS_TX SP1_CS_TX SP2_CS_TX...
1x/4x LP serial port maintenance block header register 1x/4x mode selection field for ports 1X_MODE field of PER_SET_SNTL 2 MSBs of address for LSUn 4x/1x mode selection field for ports 4x mode data path in SRIO component block diagram discovery timer period field 8-bit/10-bit coding and decoding 8BIT_DEVID_LOW_BOUND field of PF_8B_CNTL 8BIT_DEVID_UP_BOUND field of PF_8B_CNTL...
Page 242
SRIO Registers bad CRC in control symbol at port n rate counting enable field status field bad CRC in packet at port n rate counting enable field status field bandwidth per differential pair based on 1x/4x LP-Serial specification BASE_DEVICEID field of BASE_ID BASE_ID base address registers for local configuration space 191, 192...
Page 243
at port n rate counting enable field status field bad CRC in control symbol at port n rate counting enable field status field detect 4 reset control symbols at port detect multicast-event control symbol at port enable interrupt if 4 reset control symbols received at port enable interrupt if multicast-event control symbol received at port...
Page 244
SRIO Registers DEV_INFO DEVICE_VENDORIDENTITY field of DEV_ID DEVICEID_MSB field of PW_TGT_ID DEVICEID_REG1 DEVICEID_REG2 device ID capture CSR for logical/transport errors device identity CAR DEVICEIDENTITY field of DEV_ID DEVICEID field of PW_TGT_ID device IDs base device ID for host PE base device ID for large common transport system base device ID for small common transport system device ID for port-write target disable base ID match requirement field for ports...
Page 245
ENPLL2 field of PER_SET_CNTL ENPLL3 field of PER_SET_CNTL ENPLL4 field of PER_SET_CNTL ENPLL field of SERDES_CFGn_CNTL ENRX field of SERDES_CFGRXn_CNTL ENTX field of SERDES_CFGTXn_CNTL eop field of RX buffer descriptor eop field of TX buffer descriptor eoq field of RX buffer descriptor eoq field of TX buffer descriptor EQ field of SERDES_CFGRXn_CNTL equalizer control field...
Page 246
SRIO Registers GBL_EN GBL_EN_STAT global enable bit global enable status bit global enabling/disabling of all logical blocks H_ADDR_CAPT head descriptor pointer field for RX queue n head descriptor pointer field for TX queue n header fields doorbell operation message request packet hexadecimal notational convention HOP_COUNT field of LSUn_REG5 host base device ID lock CSR...
Page 247
limiting which devices can access a mailbox line rate versus PLL output clock frequency LINK_STATUS field of SPn_LM_RESP LINK_TIMEOUT_EN field of SPn_RATE_EN LINK_TIMEOUT field of SPn_ERR_DET link maintenance command field for port n link-request control symbol generation register link responses acknowledge or link-response control symbol overdue at port n rate counting enable field...
Page 248
SRIO Registers MAX_RETRY_ERR field of SPn_CTL_INDEP MAX_RETRY_THR field of SPn_CTL_INDEP maximum packet size exceeded at port n rate counting enable field status field maximum retry error at port n reporting enable field reporting threshold field status field memory access unit. See MAU MEMORY field of PE_FEAT memory-mapped registers enable bit memory-mapped registers enable status bits...
Page 249
OUTBOUND_ACKID field of SPn_ACKID_STAT outbound credit outbound port number for packet forwarding out-of-order reception of message packets out-of-order responses during message-passing TX operation OUTPORTID field of LSUn_REG4 OUTPUT_DEGRD_ENC field of SPn_ERR_STAT OUTPUT_ERROR_ENC field of SPn_ERR_STAT OUTPUT_ERROR_STP field of SPn_ERR_STAT OUTPUT_FLD_ENC field of SPn_ERR_STAT OUTPUT_PKT_DROP field of SPn_ERR_STAT OUTPUT_PORT_ENABLE field of SPn_CTL OUTPUT_RETRIED field of SPn_ERR_STAT...
Page 250
SRIO Registers in SRIO component block diagram PID register pins/differential signals PKT_RESP_TIMEOUT_ENABLE field of ERR_EN PKT_RSPNS_TIMEOUT field of ERR_DET PKT_UNEXPECTED_ACKID_EN field of SPn_RATE_EN PKT_UNEXPECTED_ACKID field of SPn_ERR_DET PLL block for SERDES 21, 28 PLL enable bit PLL multiply field for SERDES macro PLL output clock frequency versus line rate pointer to the next block in the data structure polarity inversion bit...
Page 251
PW_DIS field of SP_IP_MODE PW_EN field of SP_IP_MODE PW_IRQ field of SP_IP_MODE PW_TGT_ID PW_TIMER field of SP_IP_DISCOVERY_TIMER QUEUE_ID field of RXU_MAP_Hn QUEUEn_FLOW_MASK fields of TX_CPPI_FLOW_MASKS[0–7] QUEUEn_IN_ORDER fields of RX_CPPI_CNTL QUEUEn_RXDMA_CP QUEUEn_RXDMA_HDP QUEUEn_TEAR_DWN fields of RX_QUEUE_TEAR_DOWN QUEUEn_TEAR_DWN fields of TX_QUEUE_TEAR_DOWN QUEUEn_TXDMA_CP QUEUEn_TXDMA_HDP queue n receive DMA completion pointer register queue n receive DMA head descriptor pointer register...
Page 252
SRIO Registers for doorbell interrupt conditions for error, reset, and special event (port) interrupt conditions for LSU interrupt conditions RST_CS field of SP_IP_MODE RST_EN field of SP_IP_MODE rules for CPPI data traffic RX_CP field of QUEUEn_RXDMA_CP RX_CPPI_CNTL RX_CPPI_ICCR RX_CPPI_ICRR RX_CPPI_ICRR2 RX_CPPI_ICSR RX_CPPI_SECURITY_ENABLE field of ERR_EN RX_CPPI_SECURITY field of ERR_DET...
Page 253
SPn_ERR_CAPT_DBG1 SPn_ERR_CAPT_DBG2 SPn_ERR_CAPT_DBG3 SPn_ERR_CAPT_DBG4 SPn_ERR_DET SPn_ERR_RATE SPn_ERR_STAT SPn_ERR_THRESH SPn_LM_REQ SPn_LM_RESP SPn_MULT_EVNT_CS SPn_RATE_EN SPn_RST_OPT SPn_SILENCE_TIMER src_id field of RX buffer descriptor SRC_OP SRIO peripheral component block diagram data flow overview emulation halt behavior initialization example packets packet types peripheral block diagram pins/differential signals RapidIO features not supported RapidIO features supported...
Page 254
SRIO Registers transmitter enabling for SERDES macro introduction transmitter enable bit transport error handling and logging transport layer content in SRIO data stream definition in Load/Store module data flow diagram transport type field for message reception TRA. See transport layer TT field of FLOW_CNTLn tt field of RX buffer descriptor TT field of RXU_MAP_Hn...
Page 255
SRIO Registers Xoff SPRUE13A – September 2006 Index Submit Documentation Feedback...
TI product or service and is an unfair and deceptive business practice. TI is not responsible or liable for any such statements. Following are URLs where you can obtain information on other Texas Instruments products and application solutions:...
Need help?
Do you have a question about the TMS320TCI648x and is the answer not in the manual?
Questions and answers