RapidIO Overview
March 2014
Barry Wood, Chair, RapidIO Technical Working Group barry.wood@idt.com OR twg-chair@rapidio.org
RapidIO Overview March 2014 Barry Wood, Chair, RapidIO Technical - - PowerPoint PPT Presentation
RapidIO Overview March 2014 Barry Wood, Chair, RapidIO Technical Working Group barry.wood@idt.com OR twg-chair@rapidio.org RapidIO Evolution Date Event Max Lane Speed Electricals 1997 Mercury Computer and Motorola (Freescale) begin to
Barry Wood, Chair, RapidIO Technical Working Group barry.wood@idt.com OR twg-chair@rapidio.org
March 2014 2
Date Event Max Lane Speed Electricals 1997 Mercury Computer and Motorola (Freescale) begin to collaborate on a replacement for the Raceway interconnect 2000, March RapidIO Trade Association formed 2000, June RapidIO 1.2 (Parallel PHY) 1 Gbps LVDS, 8/16 bit bus 2003, Oct RapidIO 1.3 (Serial PHY) Adopted as ISO standard (ISO/IEC DIS 18372) 3.125 Gbaud XAUI, 8b/10b 2008 RapidIO 2.0 (Faster) 6.25 Gbaud OIF CEI, 8b/10b 2013 RapidIO 3.0 (Faster) 10.3125 Gbaud 10G-kr, 10G-ab 64b/67b 2015(?) RapidIO 4.0 (Faster) 25 Gbaud 64b/67b?
March 2014 3
March 2014 4
APPLICATION: Semiconductor photolithography machines 10,000 to 50,000 Hz control loop frequencies => nanometer precision https://www.youtube.com/watch?v=B9uDMNmajgw
Axxia Communications Processor DSP: several products In TCI64xx family DSP , PowerQUICC & QorIQ multicore XLS416 family Multicore Processor FPGA: Arria and Stratix Family FPGA: Virtex 4/5/6 families FPGA Wireless Baseband Processor DSP Oct22xx PowerPC based processors 460GT Switches, Bridges & IP CPS and Tsi Family Network Processor Octeon 2 family Network Processor WinPath3
March 2014 5
Used by all of the top 10 Wireless OEMs
March 2014 6
Physical Layer (4) Parallel PHY (Deprecated) (6) Serial Transport Layer (3) Transport Logical Layer (1) Logical I/O (2) Message (9) Flow Control (10) Data Streaming (11) Multicast (5) Global Shared Memory
(8) Error Management /Hot Swap
(12) VoQ Backpressure Annex II
Encapsulation
Annex I HW API System Bringup
(7) Interop
March 2014 7
uProc
Switch
DSP DSP DSP DSP
A B
Packet 0 CS CS CS Packet 1 CS CS Packet 2 Packet 2 CS CS
Hardware Terminated Read/Write and Messaging
March 2014 8
Packet 2 Packet 3
Tx Rx
SOP Packet 1
Tx Rx
EOP
Tx Rx
EOP SOP EOP Packet Transfer Receiver-based Flow Control Error Recovery RFR
March 2014 9
Control Symbol Identifier Type 0 Parm 0 CRC CMD
Parm 1
Type1 Packet Accepted Packet Retry Packet Not Accepted Status VC Status Link Response Timestamp Start-of-packet Stomp End-of-packet Restart-from-retry Link Request Multicast Event No Operation/Ignore Timestamp Calibration
March 2014 10
Logical Transport Physical Logical Header
FType
Data Payload Data Payload
TT Dest ID Src ID
Physical Bits Early CRC Final CRC 10 2 4 8,16,32 8,16,32 8 to 256 bytes 16 16
Control Symbol
32,64
Control Symbol
32,64
Packets cannot be altered by RapidIO switches – CRC is constant. RapidIO Standard defines 9 Virtual Channels (guaranteed bandwidth) Virtual Channel 0 supports 4 or 8 priorities.
March 2014 11
Switch
End Point End Point End Point End Point End Point
Switch Switch Switch Switch End Point End Point End Point End Point
Switch End Point End Point End Point End Point End Point Switch Switch
within each switch
End Point End Point End Point End Point End Point Switch Switch
March 2014 12
March 2014 13 CPU1 Packet CPU2 RapidIO Memory Map
Logical Transport Physical Transaction FType Size SrcTID Memory Address Data Payload Data Payload TT Dest ID Src ID Physical Bits Early CRC Final CRC 10 2 4 8,16 8,16 4 4 8 32, 48, 64 8 to 256 bytes 16 16 Control Symbol 32,64 Control Symbol 32,64
CPU2 Internal Memory Map
March 2014 14
Operation Transactions Used Possible System Usage Description Packet Format Doorbell DOORBELL, RESPONSE Event notification independent of source and target memory map implementation, efficient hardware implementation Logical Layer Retry Part 2, Section 3.3.1 FType 10 Section 4.2.4 Data Message MESSAGE, MESSAGE RESPONSE Message transfer independent of source and target memory map implementation, limited number of connections/queues, efficient hardware implementation Logical Layer Retry Part 2, Section 3.3.2 FType 11 Section 4.2.5 Data Streaming Data Streaming Single Segment, Start/Continue /End Segments, Extended Header Flow Control Message transfer independent of source and target memory map implementation. Connection oriented, 64K connections/queues, support for XON/XOFF, Rate and Credit based flow control. No Logical Layer Retry Part 10, Section 3.2 FType 9 Part 10, Section 4.2
March 2014 15 Response Packet Request Packet
Logical Transport Physical
Rsvd FType TID TT Dest ID Src ID Physical Bits Final CRC
10 2 4 8 8 16
Info
16 Request Packet
TType FType TID TT Dest ID Src ID Physical Bits Final CRC
10 2 4 4 8 16 Response Packet
Status
4 “STATUS” is “Retry” when the receive queue is full.
March 2014 16
Single Segment Start Segment End Segment Start Segment End Segment Cont Segment Cont Segment Cont Segment Cont Segment
Max 64KB transfer, Byte granularity
March 2014 17
Src 0 Src 1 Src 2 Server Sources send Transmit Queue Status to Server Src 0 Src 1 Src 2 Server Server Responds with Flow Control Messages
3 Flow Control Protocols Supported:
Sources communicate queue fill level 000/255 means “Empty” and 255/255 means “Full” Flow Control can be applied to
March 2014 18
F E Src 0 Src 1 Src 2 Server Sources send Transmit Queue Status to Server Src 0 Src 1 Src 2 Server Server Responds with Flow Control Messages XON/XOFF
F E F E XON XOFF XON
March 2014 19
F E Src 0 Src 1 Src 2 Server Sources send Transmit Queue Status to Server Src 0 Src 1 Src 2 Server Server Responds with Flow Control Messages Rate Based
F E F E Inc 255/255 NoChange Dec 64/255
March 2014 20
F E Src 0 Src 1 Src 2 Server Sources send Transmit Queue Status to Server Src 0 Src 1 Src 2 Server Server Responds with Flow Control Messages Credit Based
F E F E <All> 255 Cr 10 Credits left 10 Credits left <Low Prio> XOFF <All> 128 Cr
March 2014 21
Switch DSP 0 DSP 1 DSP 3 DSP 2
2 3 4 5
March 2014 22
uProc Switch
Switch Switch
DSP DSP DSP DSP
Switch
DSP DSP DSP DSP System Host Data Processing
uProc Redundant System Host
March 2014 23
March 2014 24
March 2014 25
SpaceWire/Fibre RapidIO Packets
SpaceWire/Fibre Endpoints process RapidIO packets
RapidIO Endpoints only know about RapidIO
March 2014 26
SpaceWire/SpaceFibre Endpoints need only know about SpaceWire/SpaceFibre RapidIO Endpoints process SpaceWire/SpaceFibre packets
SpaceWire SpaceFibre Message Packets (4K) Data Streaming (64K) Implementation Specific Read/Write (256 Bytes) Read/Write to Buffer
March 2014 27
SpaceWire/Fibre RapidIO
been plugged in based on presence/absence of K28.7
March 2014 28
Kernel User Space
APPLICATION NOT IN SCOPE OPEN SOURCE RTA STACK OPEN SOURCE KERNEL
Portable/ Legacy Application Kernel Interface RapidIO Device Interfaces RIONET DMA Events Kernel Driver MPORT Drivers Sockets RDMA Events
CLI Open source command line interpreter for fabric management RapidIO Standard APIs RapidIO standard interface definitions and behavior Fabric Functions Implementation of RapidIO Standard APIs Fabric Management Endpoint APIs Universal programming model for endpoint functions Switch APIs Universal programming model for switch functions. Used by Alcatel- Lucent systems today. Messaging/Sockets/RDMA /Events Implementation of RapidIO Standard API’s Data Path RapidIO Device Interfaces Standardized hardware functions.
Fabric Functions Switch APIs Endpoint APIs Switch APIs High Performance/ Embedded Application RapidIO Standard APIs C L I
Messaging
RapidIO Device Interfaces
March 2014 29
APPLICATION NOT IN SCOPE OPEN SOURCE RTA STACK OPEN SOURCE KERNEL
Portable/ Legacy Application Kernel Interface Fabric Functions Switch APIs Endpoint APIs RIONET DMA Events Kernel Driver MPORT Drivers RapidIO Standard APIs
CUSTOM COMPONENTS
Switch APIs
TOOLS, GUI, OPTIMIZATION
Extensions Messaging
Sockets RDMA Events
MPORT Drivers
RapidIO Device Interfaces TOOLS, GUI, OPTIMIZATION Value adders for debug/monitoring, system visualization, data interpretation, and topology specific functions MPORT Drivers Drivers optimized for and aware of executing hardware
mode. Extensions Additional data path and/or fabric management services provided to applications High Performance/ Embedded Application C L I Fabric Functions Switch APIs Endpoint APIs Switch APIs RapidIO Standard APIs
Extensions Kernel User Space
March 2014 30
Barry Wood, Chair, RapidIO Technical Working Group barry.wood@idt.com OR twg-chair@rapidio.org
March 2014 32
device ID receives a maintenance packet it examines the hop_count field. If the received hop_count is zero, the access is for that switch. If the hop_count is not zero, it is decremented and the packet is sent out of the switch according to the destinationID field.
end point, the hop_count field shall always be assigned a value of 0xFF by the source of the packets to prevent them from being inadvertently accepted by an intervening device.
March 2014 33
Logical Transport Physical
MsgLen FType Size TT Dest ID Src ID Physical Bits
10 2 4 8,16,32 8,16,32 4 4 4
Letter
2 Single-Segment Message Packet – 64 Mailboxes
TType FType TT Dest ID Src ID Physical Bits Final CRC
10 2 4 8,16,32 8,16,32 4 16 Single Segment Response Packet
Status
4
MBox XMBox
2 4
Letter
2
MBox XMBox
2
MsgLen FType Size TT Dest ID Src ID Physical Bits
10 2 4 8,16,32 8,16,32 4 4 4
Letter
2 Multi-Segment Message Packet – 4 Mailboxes
TType FType TT Dest ID Src ID Physical Bits Final CRC
10 2 4 8,16,32 8,16,32 4 16 Multi Segment Response Packet
Status
4
MBox MsgSeg
2 4
Letter
2
MBox MsgSeg
2