SlideShare ist ein Scribd-Unternehmen logo
1 von 18
RapidIO 101
Barry Wood
Expert Applications Engineer

©2009 Integrated Device Technology, Inc.
RapidIO Specification
History/Background
Date

Event

1997

2000,
February
2000,
June
2005

Mercury Computer and Motorola
(Freescale) begin to collaborate
on a replacement for the Raceway
interconnect
RapidIO Trade Association
formed
RapidIO 1.2 (Parallel PHY)
1 Gbps (LVDS 8/16 lane
parallel bus)
RapidIO 1.3 (Serial PHY)
3.125 Gbaud (XAUI)

2008

RapidIO 2.0 (Faster)

2013

RapidIO 3.0 (Faster)

2015(?)

RapidIO 4.0 (Faster)

www.IDT.co

Max Speed Per Lane

6.25 Gbaud
(OIF CEI)
10.3125 Gbaud
(10G-kr, 10G-ab)
???

PAGE 2
RapidIO Specification Structure
System
Specs

Protocol Specification

Logical
Layer

Part 2
Message

Part 1
Logical I/O

Transport
Layer

Physical
Layer

Part 9
Part 5 Flow Control
Part 10
Global Shared
Data Streaming
Memory

Part 3
Transport

Part 4
Parallel PHY
(LVDS)

Part 6
Serial PHY

Part 11
Multicast
Part 12
VoQ
Extensions

The RapidIO specification is available at www.rapidio.org
www.IDT.co

PAGE 3

Annex I
HW API
System
Bringup
Annex II
Session
Mgmt
Part 7
Device
Interop
Part 8
Error
Mgmt
RapidIO Specification Mapped to
Devices

uProc

DSP

Switch

Switch

Transport
Physical

DSP

DSP

Logical

DSP

CS

Packet 0

CS

CS

A

B
CS Packet 1 CS Packet 2 CS Packet 2 CS

www.IDT.co

PAGE 4
Physical Layer: Control Symbols
Receive Side
“Type 0”
Control
Symbol Type 0
Identifier

Parm 0

Parm 1

Transmit Side
“Type 1”

Type1 CMD CRC
Start-of-packet
Stomp
End-of-packet
Restart-from-retry
Link Request
Multicast Event
No Operation/Ignore
Timestamp Calibration

Packet Accepted
Packet Retry
Packet Not Accepted
Status
VC Status
Link Response
Timestamp

24, 48, or 64 bits
www.IDT.co

PAGE 5
Physical Layer: Reliable Packet Delivery
Packet Transfer

Rx

Tx

S ta rt o f P ac ke t

Flow Control

Error Recovery

Rx

Tx

Rx

Tx

SO P

SOP

Packet 1

E n d o f P ac ke t

Packet 1

EOP

EOP

P a ck et A ck

R E TR Y

te d
P a ck et N o t A cc ep

RFR

Li nk R eq ue st /P or t S
ta tu s

SOP

)
Li nk R e sp (o pt io n al

Packet 1

St ar t of Pa ck et

Packet 2
St ar t of Pa ck et

Packet 3

Packet 1

SOP

EOP

Packet 1

P a ck e t A ck

www.IDT.co

EOP

PAGE 6
Physical Layer: Priority and AckIDs

Packet Priority
•

A value from 0 to 3, where 3 is the highest priority
• Optional support for Critical Request Flow bit yields a total of 8 priorities

•

Responses must be higher priority than requests, to avoid deadlock

•

Under congestion, packets of higher priority may pass packets of lower
priority in a RapidIO fabric

Acknowledge ID (AckID)
●

AckIDs are monotonically increasing sequential values that uniquely
identify packets in the transmitted data stream

●

AckIDs are found in packets and control symbols

●

AckID management ensures reliable packet delivery

www.IDT.co

PAGE 7
RapidIO Packet Format

Payload:
256 Bytes Max

80 Bytes

Physical Transport
Layer
Layer
Header
Header

Logical
Layer Packet Data CRC
Header

280 Byte Maximum
NOT TO SCALE

www.IDT.co

PAGE 8

Packet Data

CRC
RapidIO Physical Layer
Physical Transport
Layer
Layer
Header
Header

Logical
Layer Packet Data CRC
Header

6 Bits

1

2 Bits

1

AckID

VC

PRIO

CRF

2 BYTES

www.IDT.co

PAGE 9

Packet Data

2 Bits 4 Bits
TT

FType

CRC
RapidIO Transport Layer
Physical Transport
Layer
Layer
Header
Header

Logical
Layer Packet Data CRC
Header

Packet Data

DestID

Destination ID
Source ID

RapidIO packets are routed using Destination IDs
Destination IDs are 8,16 or 32 bits in size.
Packets can be multicast based on Destination IDs

www.IDT.co

PAGE 10

Port

0x34
0x35
0x36
0x37
0x38

1
3
5
2
7

CRC
RapidIO Logical I/O Packet Format

Physical Transport
Layer
Layer
Header
Header

Logical
Layer Packet Data CRC
Header

Packet Data

Transaction
RapidIO supports
up to 66 bits of address, and
all transactions required to
perform multiprocessing and
cache coherency (CC-NUMA).

www.IDT.co

Size

2 Bytes

SrcTID

Address

PAGE 11

4, 6, or 8 Bytes

CRC
RapidIO Message Packet Format
Physical Transport
Layer
Layer
Header
Header

Logical
Layer Packet Data CRC
Header

Packet Data

CRC

Msglen
SSize
Letter

2 Bytes

Mailbox
MsgSeg

Messages: Up to 4KB sent using up to 16 packets.
Logical layer responses are sent for every packet.
Logical layer “Retry” response sent when no reassembly context is available
www.IDT.co

PAGE 12
RapidIO Doorbell Packet Format
Physical Transport
Layer
Layer
Header
Header

Logical
Layer Packet Data CRC
Header

2 Bytes

Rsvd
SrcTID

2 Bytes

Doorbells indicate one of 64K events using the 2 byte payload
Doorbells can be retried just like Messages
www.IDT.co

PAGE 13
RapidIO Data Streaming Packet Format
Physical Transport
Layer
Layer
Header
Header

Logical
Layer Packet Data CRC
Header

Data
Segment

StreamID

Seg Ctrl

FC Op

StreamID

CRC

Flow
Control

Class of Svc

Packet Data

FC Mask

•Data Streaming: Up to 64K per transaction, no logical layer responses
•Integrated flow control supports XON/XOFF, rate, and credit based
algorithms.
• Supports hardware virtualization implementations
www.IDT.co

PAGE 14
RapidIO System Discovery
DSP 0

uProc

2

1
Switch

DSP 1
3

5

DSP 3

4

DSP 2

System discovery uses a recursive algorithm to
- Discover location and connectivity of all switches and endpoints
- Allocate destination IDs to DSPs
- Configure switch routing tables
Standard system discovery supports two redundant hosts
www.IDT.co

PAGE 15
RapidIO for Fault Tolerant Systems
Data Processing

System Host

DSP

DSP

DSP

DSP

Switch

DSP

DSP

uProc

DSP

DSP

Switch

Redundant System Host

uProc

Switch

Switch

• Packets destined for the faulty endpoint must be discarded
• Refer to Part 8 Error Management Extensions Section 1.2.4, table 1-1
• Timeouts can also be used to discard packets

• Hardware must detect and rapidly notify the System Host of a failure
• The hardware must begin discarding packets to prevent system congestion/failure

•The System Host must receive notification, then diagnose, isolate and
allow replacement of the faulty hardware
www.IDT.co

PAGE 16
RapidIO Ecosystem

DSP: several products
In TCI64xx family

Axxia Communications
Processor

FPGA: Arria
and Stratix Family

XLS416 family
Multicore
Processor

FPGA: Virtex 4/5/6
families

DSP, PowerQUICC & QorIQ
multicore

FPGA

Switches, Bridges & IP
CPS and Tsi Family
Wireless Baseband Processor

DSP Oct22xx

Network Processor
Octeon 2 family

www.IDT.co

PowerPC based processors Network Processor
WinPath3
460GT
PAGE 17
Transcript
●

Hello, and welcome to RapidIO 101. My name is Barry Wood. I'm an expert applications engineer working at IDT. I have contributed to the RapidIO spec for the past ten years, and I've also been the architect of some of IDT's RapidIO parts. Today I wanted
to talk with you a little bit about RapidIO.

●

Now most of you have probably not heard enough a lot about RapidIO, even though you likely use it every day indirectly. RapidIO is used in a great many of cell phone base stations. So if you use an LTE base station, that base station uses RapidIO
technology. It's also likely that if you're using a 3G base station, you're using RapidIO technology. RapidIO is also used largely in military compute, so high-performance mobile compute as well as industrial control and medical imaging. You’ll find that
RapidIO excels wherever there are size, weight, and power constraints, and the latest example of that is that RapidIO was selected by NASA and a number of other companies as the next generation Space Center Connect. If RapidIO can meet the size,
weight, and power constraints of space, I'm sure it's ideal for your application.

●

The RapidIO specification is a layered specification consisting of a logical transport and physical layer. The logical layer defines read/write and messaging semantics for use by RapidIO components. The transport layer defines how RapidIO packets are
routed through a RapidIO fabric. And the physical layer defines the electrical encoding and electrical characteristics of RapidIO links. There are also a number of RapidIO specification parts that cut across the different layers. I'm going to talk about two of
those today. The first is the RapidIO system bring-out specification, which defines how the RapidIO system is initialized, and the part eight error management specification, which finds the fault-tolerance support for RapidIO systems. The RapidIO
specification is available in its entirety from www.rapidio.org. There is no charge.

●

This chart shows a little about how the RapidIO specification is mapped to actual devices. The RapidIO ecosystem consists of two kinds of devices: endpoints and switches. Endpoints are devices that originate and process packets. Switches route
packages to endpoints. So at the top you can understand that the logical layer specification largely applies to endpoints. In this chart, there is an example of a microprocessor sending a request to a DSP and receiving a response. The transport layer maps
largely to RapidIO switch devices. The physical layer specification applies to every RapidIO link. At either end of the link are two link partners, or processing elements. These link partners exchange two kinds of information. The first is packets, and the
second are control symbols. The use of control symbols allows RapidIO to guarantee the in-order delivery of packets from an endpoint to their ultimate destination. RapidIO control symbols have a unique capability among interconnect, in that they can be
embedded within packets. This gives RapidIO the lowest-latency control path for flow control and error recovery of any interconnect. The transfer of packets is governed by two quantities. The first is the priority of the packet. The second is the acknowledge
ID found in the packet, and also carried in control symbols.

●

Control symbols carry two kinds of information. The first is information that the transmit side sends to the receiver directly. These are things like start of packet, end of packet, or a multicast event control symbol that signals an event has occurred within the
RapidIO network. The other kind of information is information that the receiver is sending back to the transmitter. These are things like packet accepted, so a packet was successfully transferred, packet not accepted, so an error was detected, link
response, or time stamp.

●

These message sequence charts give some information about how RapidIO control symbols are used to ensure the reliable, in-order delivery of packets in a RapidIO fabric. The chart on the left shows success case RapidIO packet transfer. You'll note that
the packet is delimited with a start of packet and terminated with an end of packet control symbol. That packet is then acknowledged. So with every hop through a RapidIO fabric, each link partner ensures that its link partner receives the RapidIO packet
successfully before reusing the buffer for that RapidIO packet. You'll also see that packets can be terminated with a start of packet control symbol. So if you're sending many packets back-to-back, you can save some bandwidth by not sending an end of
packet, but instead sending start of packet, packet, start of packet, and so forth. The middle message sequence chart shows how RapidIO flow control works. Most RapidIO devices will send packets to the receiver regardless of how many free buffers the
receiver has. If the receiver does not have sufficient buffering to accept the packet, the receiver sends back a retry control symbol, indicating the acknowledgment ID of the packet that is being retried. The transmitter then sends a restart from retry control
symbol, acknowledging receipt of the retry, and chooses a higher-priority packet to send. The exchange of control symbols usually takes less than 200 nanoseconds on a RapidIO link. A similar mechanism is used for error recovery, but instead of a retry
control symbol the receiver sends a packet not accepted control symbol, indicating that a transmission error has been detected. The transmitter sends a link request control symbol requesting the acknowledgement ID of the next packet that should be sent.
The link response contains that acknowledgement ID. Once that link response has been received successfully, packet transmission resumes. Again, the error recovery can occur in 300 nanoseconds or less on RapidIO links. This is far faster than the error
recovery that Ethernet, with its end-to-end packet timeouts allows.

●

This chart contains a little bit more information about priority and acknowledgement IDs. You can peruse that and read it at your leisure.

●

This chart has a little bit more information about the packet format of RapidIO. You'll see that, just as it is a layered specification so the packet header is also layered with a physical transport and logical layer header. RapidIO packets longer than 80 bytes
have an intermediate CRC in them, which allows a receiving endpoint to ensure the integrity of the transport and logical layer headers before they begin to process the packet. This is just one way that RapidIO was designed to minimize latency and
maximize the efficiency of packet transfers between endpoints.

●

The physical layer header is two bytes that actually contain a physical transport and logical layer header within them. The packet priority, as well as the acknowledgement ID are encoded in the physical layer header. The transport type bits, or "TT bits",
determine the size of the following trans [audio skips] and the F type determines the packet format for the logical layer header which occurs in the packet.

●

RapidIO devices are identified using an 8, 16, or 32 bit device ID. Any RapidIO packet contains two device IDs. The first is the destination ID, which is where the packet is being sent to. The second is the source ID, which is where the packet originated
from. To route a packet, the destination ID is used to index into a routing table which determines the output port that the switch should send the packet to. Once a packet is received by an endpoint, if the endpoint must create a response for that packet, it
simply switches the destination and source ID and sends back the response. I should note that RapidIO also supports multicast, in which case when the switch uses a destination ID to look up the output port, instead of a single port being returned, a bit
vector of ports is returned. Every bit in that vector will receive a [audio skips].

●

I mentioned earlier that RapidIO supports read/write as well as messaging semantics. This chart contains some information about the read/write semantics, or how the read/write semantics of RapidIO are implemented. RapidIO supports a variety of read,
write, automic, and castroherency operations that support RDMA as well as ccNUMA.

●

RapidIO messaging has several different possible implementations. The first confusingly, is named a messaging packet. This chart gives some information about the format of messaging packets. RapidIO doorbells are a much shorter that indicate that an
event has occurred in a system. Just like message packets, doorbell packets are designed to minimize the amount of silicon required to successfully receive and process them. For this reason, if there are insufficient resources to accept a doorbell packet at
the receiver, the doorbell packet or message packet will cause a logical layer retry to occur. This is different from a physical layer retry, and it allows limited resources of embedded memory to be used exclusively to process RapidIO packets. So RapidIO
does not need a lot of SDRAM bandwidth to efficiently and effectively deliver a lot of throughput and guaranteed latency.

●

Data streaming packets are another mechanism that is used to support messaging semantics. So while messaging packets only support a 4 kilobyte transfer, data streaming packets support up to 64 kilobytes per transaction. Data streaming packets also
support many many more queues than messaging packets. So they are ideal for virtualization. Data streaming packets also support extended header flow control. Extended header flow control was designed to manage quality of service in systems that use
client-server kinds of architectures as well as publish-subscribe. Extended header flow control allows a client to communicate the degree that its queues are full to a server, and the server can then respond with either a simple X on X off, rate adjustment, or
credit based flow control. This allows the server to very tightly control the quality of service, and hence the user experience that the system is delivering.

●

This chart gives some information about the RapidIO system discovery algorithm. It's a very simple recursive algorithm where, for example the microprocessor first determines that it is connected to a switch. Using standard registers, it checks each switch
port, what that switch port is connected to. Device IDs are allocated to the devices that are connected, and the switch routing tables are updated. Note that at this point, the memory map of the system does not need to be determined. That is because
RapidIO routes packets based on device ID, and not on address. This allows RapidIO to support any system topology.

●

RapidIO also has support for fault tolerance. If a RapidIO endpoint fails, or a link to that endpoint fails, a RapidIO switch can be configured to detect that failure within nanoseconds. It can also be configured to discard the packets that are destined for that
failed endpoint. This prevents a cascade congestion failure from occurring in a RapidIO system, and allows the system host or the secondary host to diagnose and recover from the fault while the rest of the system continues to operate correctly.

●

If you would like more information about RapidIO, please consult any of these companies or of course my own IDT. Thank you very much for your attention, and let's go RapidIO.

www.IDT.co

PAGE 18

Weitere ähnliche Inhalte

Was ist angesagt?

Insights on the Configuration and Performances of SOME/IP Service Discovery
Insights on the Configuration and Performances of SOME/IP Service DiscoveryInsights on the Configuration and Performances of SOME/IP Service Discovery
Insights on the Configuration and Performances of SOME/IP Service DiscoveryRealTime-at-Work (RTaW)
 
LAS16-402: ARM Trusted Firmware – from Enterprise to Embedded
LAS16-402: ARM Trusted Firmware – from Enterprise to EmbeddedLAS16-402: ARM Trusted Firmware – from Enterprise to Embedded
LAS16-402: ARM Trusted Firmware – from Enterprise to EmbeddedLinaro
 
eMMC Embedded Multimedia Card overview
eMMC Embedded Multimedia Card overvieweMMC Embedded Multimedia Card overview
eMMC Embedded Multimedia Card overviewVijayGESYS
 
Wishbone interface and bus cycles
Wishbone interface and bus cyclesWishbone interface and bus cycles
Wishbone interface and bus cyclesdennis gookyi
 
128852588-KLM-E1s.pdf
128852588-KLM-E1s.pdf128852588-KLM-E1s.pdf
128852588-KLM-E1s.pdfMaster22
 
UART(universal asynchronous receiver transmitter ) PPT
UART(universal asynchronous receiver transmitter ) PPTUART(universal asynchronous receiver transmitter ) PPT
UART(universal asynchronous receiver transmitter ) PPTSai_praneeth
 
Session 8,9 PCI Express
Session 8,9 PCI ExpressSession 8,9 PCI Express
Session 8,9 PCI ExpressSubhash Iyer
 
Real Time Clock Interfacing with FPGA
Real Time Clock Interfacing with FPGAReal Time Clock Interfacing with FPGA
Real Time Clock Interfacing with FPGAMafaz Ahmed
 
5G NR DSS - Explained Well
5G NR DSS - Explained Well5G NR DSS - Explained Well
5G NR DSS - Explained Wellssk
 
Introduction to System verilog
Introduction to System verilog Introduction to System verilog
Introduction to System verilog Pushpa Yakkala
 
Lte drive test parameter introduction
Lte drive test parameter introductionLte drive test parameter introduction
Lte drive test parameter introductionRay KHASTUR
 

Was ist angesagt? (20)

Insights on the Configuration and Performances of SOME/IP Service Discovery
Insights on the Configuration and Performances of SOME/IP Service DiscoveryInsights on the Configuration and Performances of SOME/IP Service Discovery
Insights on the Configuration and Performances of SOME/IP Service Discovery
 
LAS16-402: ARM Trusted Firmware – from Enterprise to Embedded
LAS16-402: ARM Trusted Firmware – from Enterprise to EmbeddedLAS16-402: ARM Trusted Firmware – from Enterprise to Embedded
LAS16-402: ARM Trusted Firmware – from Enterprise to Embedded
 
Modeling FSMs
Modeling FSMsModeling FSMs
Modeling FSMs
 
Usb protocol
Usb protocol Usb protocol
Usb protocol
 
Lcd
LcdLcd
Lcd
 
eMMC Embedded Multimedia Card overview
eMMC Embedded Multimedia Card overvieweMMC Embedded Multimedia Card overview
eMMC Embedded Multimedia Card overview
 
Wishbone interface and bus cycles
Wishbone interface and bus cyclesWishbone interface and bus cycles
Wishbone interface and bus cycles
 
Lte channel
Lte channelLte channel
Lte channel
 
128852588-KLM-E1s.pdf
128852588-KLM-E1s.pdf128852588-KLM-E1s.pdf
128852588-KLM-E1s.pdf
 
Uart
UartUart
Uart
 
system verilog
system verilogsystem verilog
system verilog
 
UART(universal asynchronous receiver transmitter ) PPT
UART(universal asynchronous receiver transmitter ) PPTUART(universal asynchronous receiver transmitter ) PPT
UART(universal asynchronous receiver transmitter ) PPT
 
Interfacing LCD with 8051 Microcontroller
Interfacing LCD with 8051 MicrocontrollerInterfacing LCD with 8051 Microcontroller
Interfacing LCD with 8051 Microcontroller
 
Session 8,9 PCI Express
Session 8,9 PCI ExpressSession 8,9 PCI Express
Session 8,9 PCI Express
 
Drive test final
Drive test  finalDrive test  final
Drive test final
 
Real Time Clock Interfacing with FPGA
Real Time Clock Interfacing with FPGAReal Time Clock Interfacing with FPGA
Real Time Clock Interfacing with FPGA
 
5G NR DSS - Explained Well
5G NR DSS - Explained Well5G NR DSS - Explained Well
5G NR DSS - Explained Well
 
AMBA AHB 5
AMBA AHB 5AMBA AHB 5
AMBA AHB 5
 
Introduction to System verilog
Introduction to System verilog Introduction to System verilog
Introduction to System verilog
 
Lte drive test parameter introduction
Lte drive test parameter introductionLte drive test parameter introduction
Lte drive test parameter introduction
 

Ähnlich wie Introduction to Serial RapidIO® (SRIO) by IDT

Introduction to VIP with PCI Express Technology
Introduction to VIP with PCI Express TechnologyIntroduction to VIP with PCI Express Technology
Introduction to VIP with PCI Express Technologyijsrd.com
 
IRJET- Assessment of Network Protocol Packet Analysis in IPV4 and IPV6 on Loc...
IRJET- Assessment of Network Protocol Packet Analysis in IPV4 and IPV6 on Loc...IRJET- Assessment of Network Protocol Packet Analysis in IPV4 and IPV6 on Loc...
IRJET- Assessment of Network Protocol Packet Analysis in IPV4 and IPV6 on Loc...IRJET Journal
 
Hyper Transport Technology
Hyper Transport TechnologyHyper Transport Technology
Hyper Transport TechnologyRohan Khude
 
PCIe Gen 3.0 Presentation @ 4th FPGA Camp
PCIe Gen 3.0 Presentation @ 4th FPGA CampPCIe Gen 3.0 Presentation @ 4th FPGA Camp
PCIe Gen 3.0 Presentation @ 4th FPGA CampFPGA Central
 
Communication Protocols Augmentation in VLSI Design Applications
Communication Protocols Augmentation in VLSI Design ApplicationsCommunication Protocols Augmentation in VLSI Design Applications
Communication Protocols Augmentation in VLSI Design ApplicationsIJERA Editor
 
ConfigureTwo networks principle
ConfigureTwo networks principleConfigureTwo networks principle
ConfigureTwo networks principleDrAlneami
 
SDN, OpenFlow, NFV, and Virtual Network
SDN, OpenFlow, NFV, and Virtual NetworkSDN, OpenFlow, NFV, and Virtual Network
SDN, OpenFlow, NFV, and Virtual NetworkTim4PreStartup
 
Hyper Transport Technology
Hyper Transport TechnologyHyper Transport Technology
Hyper Transport Technologynayakslideshare
 
NETWORK DEVICE SECURITY NETWORK HARDENING
NETWORK DEVICE SECURITY NETWORK HARDENINGNETWORK DEVICE SECURITY NETWORK HARDENING
NETWORK DEVICE SECURITY NETWORK HARDENINGramya marichamy
 
RCA OCORA: Safe Computing Platform using open standards
RCA OCORA: Safe Computing Platform using open standardsRCA OCORA: Safe Computing Platform using open standards
RCA OCORA: Safe Computing Platform using open standardsAdaCore
 
HIGH PERFORMANCE ETHERNET PACKET PROCESSOR CORE FOR NEXT GENERATION NETWORKS
HIGH PERFORMANCE ETHERNET PACKET PROCESSOR CORE FOR NEXT GENERATION NETWORKSHIGH PERFORMANCE ETHERNET PACKET PROCESSOR CORE FOR NEXT GENERATION NETWORKS
HIGH PERFORMANCE ETHERNET PACKET PROCESSOR CORE FOR NEXT GENERATION NETWORKSijngnjournal
 
Basic ccna interview questions and answers ~ sysnet notes
Basic ccna interview questions and answers ~ sysnet notesBasic ccna interview questions and answers ~ sysnet notes
Basic ccna interview questions and answers ~ sysnet notesVamsi Krishna Kalavala
 
Wireless Personal Area Networks
Wireless Personal Area NetworksWireless Personal Area Networks
Wireless Personal Area NetworksDilum Bandara
 
The next Trading Infrastructure
The next Trading InfrastructureThe next Trading Infrastructure
The next Trading Infrastructureenyx_com
 
Cybersecurity Tutorial | Demo On Man In The Middle Attack | Cybersecurity Tra...
Cybersecurity Tutorial | Demo On Man In The Middle Attack | Cybersecurity Tra...Cybersecurity Tutorial | Demo On Man In The Middle Attack | Cybersecurity Tra...
Cybersecurity Tutorial | Demo On Man In The Middle Attack | Cybersecurity Tra...Edureka!
 
IRJET- Autonomous Underwater Vehicle: Electronics and Software Implementation...
IRJET- Autonomous Underwater Vehicle: Electronics and Software Implementation...IRJET- Autonomous Underwater Vehicle: Electronics and Software Implementation...
IRJET- Autonomous Underwater Vehicle: Electronics and Software Implementation...IRJET Journal
 
9726 dsi-protocol-stacks-ds new
9726 dsi-protocol-stacks-ds new9726 dsi-protocol-stacks-ds new
9726 dsi-protocol-stacks-ds newmm nn
 

Ähnlich wie Introduction to Serial RapidIO® (SRIO) by IDT (20)

Introduction to VIP with PCI Express Technology
Introduction to VIP with PCI Express TechnologyIntroduction to VIP with PCI Express Technology
Introduction to VIP with PCI Express Technology
 
IRJET- Assessment of Network Protocol Packet Analysis in IPV4 and IPV6 on Loc...
IRJET- Assessment of Network Protocol Packet Analysis in IPV4 and IPV6 on Loc...IRJET- Assessment of Network Protocol Packet Analysis in IPV4 and IPV6 on Loc...
IRJET- Assessment of Network Protocol Packet Analysis in IPV4 and IPV6 on Loc...
 
Netw204 Quiz Answers Essay
Netw204 Quiz Answers EssayNetw204 Quiz Answers Essay
Netw204 Quiz Answers Essay
 
Hyper Transport Technology
Hyper Transport TechnologyHyper Transport Technology
Hyper Transport Technology
 
PCIe Gen 3.0 Presentation @ 4th FPGA Camp
PCIe Gen 3.0 Presentation @ 4th FPGA CampPCIe Gen 3.0 Presentation @ 4th FPGA Camp
PCIe Gen 3.0 Presentation @ 4th FPGA Camp
 
Communication Protocols Augmentation in VLSI Design Applications
Communication Protocols Augmentation in VLSI Design ApplicationsCommunication Protocols Augmentation in VLSI Design Applications
Communication Protocols Augmentation in VLSI Design Applications
 
ConfigureTwo networks principle
ConfigureTwo networks principleConfigureTwo networks principle
ConfigureTwo networks principle
 
SDN, OpenFlow, NFV, and Virtual Network
SDN, OpenFlow, NFV, and Virtual NetworkSDN, OpenFlow, NFV, and Virtual Network
SDN, OpenFlow, NFV, and Virtual Network
 
Hyper Transport Technology
Hyper Transport TechnologyHyper Transport Technology
Hyper Transport Technology
 
NETWORK DEVICE SECURITY NETWORK HARDENING
NETWORK DEVICE SECURITY NETWORK HARDENINGNETWORK DEVICE SECURITY NETWORK HARDENING
NETWORK DEVICE SECURITY NETWORK HARDENING
 
RCA OCORA: Safe Computing Platform using open standards
RCA OCORA: Safe Computing Platform using open standardsRCA OCORA: Safe Computing Platform using open standards
RCA OCORA: Safe Computing Platform using open standards
 
HIGH PERFORMANCE ETHERNET PACKET PROCESSOR CORE FOR NEXT GENERATION NETWORKS
HIGH PERFORMANCE ETHERNET PACKET PROCESSOR CORE FOR NEXT GENERATION NETWORKSHIGH PERFORMANCE ETHERNET PACKET PROCESSOR CORE FOR NEXT GENERATION NETWORKS
HIGH PERFORMANCE ETHERNET PACKET PROCESSOR CORE FOR NEXT GENERATION NETWORKS
 
Basic ccna interview questions and answers ~ sysnet notes
Basic ccna interview questions and answers ~ sysnet notesBasic ccna interview questions and answers ~ sysnet notes
Basic ccna interview questions and answers ~ sysnet notes
 
Wireless Personal Area Networks
Wireless Personal Area NetworksWireless Personal Area Networks
Wireless Personal Area Networks
 
The next Trading Infrastructure
The next Trading InfrastructureThe next Trading Infrastructure
The next Trading Infrastructure
 
Cybersecurity Tutorial | Demo On Man In The Middle Attack | Cybersecurity Tra...
Cybersecurity Tutorial | Demo On Man In The Middle Attack | Cybersecurity Tra...Cybersecurity Tutorial | Demo On Man In The Middle Attack | Cybersecurity Tra...
Cybersecurity Tutorial | Demo On Man In The Middle Attack | Cybersecurity Tra...
 
IRJET- Autonomous Underwater Vehicle: Electronics and Software Implementation...
IRJET- Autonomous Underwater Vehicle: Electronics and Software Implementation...IRJET- Autonomous Underwater Vehicle: Electronics and Software Implementation...
IRJET- Autonomous Underwater Vehicle: Electronics and Software Implementation...
 
Iot
IotIot
Iot
 
9726 dsi-protocol-stacks-ds new
9726 dsi-protocol-stacks-ds new9726 dsi-protocol-stacks-ds new
9726 dsi-protocol-stacks-ds new
 
Ccna1 presentation
Ccna1 presentationCcna1 presentation
Ccna1 presentation
 

Mehr von Integrated Device Technology

Fanout Buffers by IDT - World Leader in Timing Solutions
Fanout Buffers by IDT - World Leader in Timing Solutions Fanout Buffers by IDT - World Leader in Timing Solutions
Fanout Buffers by IDT - World Leader in Timing Solutions Integrated Device Technology
 
RF to IF Mixers by IDT: Low-power Downconversion Mixers with Zero-Distortion
RF to IF Mixers by IDT: Low-power Downconversion Mixers with Zero-DistortionRF to IF Mixers by IDT: Low-power Downconversion Mixers with Zero-Distortion
RF to IF Mixers by IDT: Low-power Downconversion Mixers with Zero-DistortionIntegrated Device Technology
 
IDT Wireless Power IDTP9020, IDTP9030 IC and Evaluation Kit Overview
IDT Wireless Power IDTP9020, IDTP9030 IC and Evaluation Kit OverviewIDT Wireless Power IDTP9020, IDTP9030 IC and Evaluation Kit Overview
IDT Wireless Power IDTP9020, IDTP9030 IC and Evaluation Kit OverviewIntegrated Device Technology
 
Understanding and Testing DDR4 R-DIMM and LR-DIMM Technology
Understanding and Testing DDR4 R-DIMM and LR-DIMM TechnologyUnderstanding and Testing DDR4 R-DIMM and LR-DIMM Technology
Understanding and Testing DDR4 R-DIMM and LR-DIMM TechnologyIntegrated Device Technology
 
Introduction to IDT Wireless Power IC Solutions (Inductive Charging)
Introduction to IDT Wireless Power IC Solutions (Inductive Charging)Introduction to IDT Wireless Power IC Solutions (Inductive Charging)
Introduction to IDT Wireless Power IC Solutions (Inductive Charging)Integrated Device Technology
 
PCI Express Clock Generators and Buffers by IDT: Ultra-low-power for PCIe Gen...
PCI Express Clock Generators and Buffers by IDT: Ultra-low-power for PCIe Gen...PCI Express Clock Generators and Buffers by IDT: Ultra-low-power for PCIe Gen...
PCI Express Clock Generators and Buffers by IDT: Ultra-low-power for PCIe Gen...Integrated Device Technology
 

Mehr von Integrated Device Technology (8)

Single-Ended Fanout Buffers and Dividers by IDT
Single-Ended Fanout Buffers and Dividers by IDT Single-Ended Fanout Buffers and Dividers by IDT
Single-Ended Fanout Buffers and Dividers by IDT
 
Fanout Buffers by IDT - World Leader in Timing Solutions
Fanout Buffers by IDT - World Leader in Timing Solutions Fanout Buffers by IDT - World Leader in Timing Solutions
Fanout Buffers by IDT - World Leader in Timing Solutions
 
RF to IF Mixers by IDT: Low-power Downconversion Mixers with Zero-Distortion
RF to IF Mixers by IDT: Low-power Downconversion Mixers with Zero-DistortionRF to IF Mixers by IDT: Low-power Downconversion Mixers with Zero-Distortion
RF to IF Mixers by IDT: Low-power Downconversion Mixers with Zero-Distortion
 
IDT Wireless Power IDTP9020, IDTP9030 IC and Evaluation Kit Overview
IDT Wireless Power IDTP9020, IDTP9030 IC and Evaluation Kit OverviewIDT Wireless Power IDTP9020, IDTP9030 IC and Evaluation Kit Overview
IDT Wireless Power IDTP9020, IDTP9030 IC and Evaluation Kit Overview
 
Understanding and Testing DDR4 R-DIMM and LR-DIMM Technology
Understanding and Testing DDR4 R-DIMM and LR-DIMM TechnologyUnderstanding and Testing DDR4 R-DIMM and LR-DIMM Technology
Understanding and Testing DDR4 R-DIMM and LR-DIMM Technology
 
Introduction to IDT Wireless Power IC Solutions (Inductive Charging)
Introduction to IDT Wireless Power IC Solutions (Inductive Charging)Introduction to IDT Wireless Power IC Solutions (Inductive Charging)
Introduction to IDT Wireless Power IC Solutions (Inductive Charging)
 
89HT0832P 16-lane 8 Gbps PCIe 3.0 Retimer by IDT
89HT0832P 16-lane 8 Gbps PCIe 3.0 Retimer by IDT89HT0832P 16-lane 8 Gbps PCIe 3.0 Retimer by IDT
89HT0832P 16-lane 8 Gbps PCIe 3.0 Retimer by IDT
 
PCI Express Clock Generators and Buffers by IDT: Ultra-low-power for PCIe Gen...
PCI Express Clock Generators and Buffers by IDT: Ultra-low-power for PCIe Gen...PCI Express Clock Generators and Buffers by IDT: Ultra-low-power for PCIe Gen...
PCI Express Clock Generators and Buffers by IDT: Ultra-low-power for PCIe Gen...
 

Kürzlich hochgeladen

The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 

Kürzlich hochgeladen (20)

The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 

Introduction to Serial RapidIO® (SRIO) by IDT

  • 1. RapidIO 101 Barry Wood Expert Applications Engineer ©2009 Integrated Device Technology, Inc.
  • 2. RapidIO Specification History/Background Date Event 1997 2000, February 2000, June 2005 Mercury Computer and Motorola (Freescale) begin to collaborate on a replacement for the Raceway interconnect RapidIO Trade Association formed RapidIO 1.2 (Parallel PHY) 1 Gbps (LVDS 8/16 lane parallel bus) RapidIO 1.3 (Serial PHY) 3.125 Gbaud (XAUI) 2008 RapidIO 2.0 (Faster) 2013 RapidIO 3.0 (Faster) 2015(?) RapidIO 4.0 (Faster) www.IDT.co Max Speed Per Lane 6.25 Gbaud (OIF CEI) 10.3125 Gbaud (10G-kr, 10G-ab) ??? PAGE 2
  • 3. RapidIO Specification Structure System Specs Protocol Specification Logical Layer Part 2 Message Part 1 Logical I/O Transport Layer Physical Layer Part 9 Part 5 Flow Control Part 10 Global Shared Data Streaming Memory Part 3 Transport Part 4 Parallel PHY (LVDS) Part 6 Serial PHY Part 11 Multicast Part 12 VoQ Extensions The RapidIO specification is available at www.rapidio.org www.IDT.co PAGE 3 Annex I HW API System Bringup Annex II Session Mgmt Part 7 Device Interop Part 8 Error Mgmt
  • 4. RapidIO Specification Mapped to Devices uProc DSP Switch Switch Transport Physical DSP DSP Logical DSP CS Packet 0 CS CS A B CS Packet 1 CS Packet 2 CS Packet 2 CS www.IDT.co PAGE 4
  • 5. Physical Layer: Control Symbols Receive Side “Type 0” Control Symbol Type 0 Identifier Parm 0 Parm 1 Transmit Side “Type 1” Type1 CMD CRC Start-of-packet Stomp End-of-packet Restart-from-retry Link Request Multicast Event No Operation/Ignore Timestamp Calibration Packet Accepted Packet Retry Packet Not Accepted Status VC Status Link Response Timestamp 24, 48, or 64 bits www.IDT.co PAGE 5
  • 6. Physical Layer: Reliable Packet Delivery Packet Transfer Rx Tx S ta rt o f P ac ke t Flow Control Error Recovery Rx Tx Rx Tx SO P SOP Packet 1 E n d o f P ac ke t Packet 1 EOP EOP P a ck et A ck R E TR Y te d P a ck et N o t A cc ep RFR Li nk R eq ue st /P or t S ta tu s SOP ) Li nk R e sp (o pt io n al Packet 1 St ar t of Pa ck et Packet 2 St ar t of Pa ck et Packet 3 Packet 1 SOP EOP Packet 1 P a ck e t A ck www.IDT.co EOP PAGE 6
  • 7. Physical Layer: Priority and AckIDs Packet Priority • A value from 0 to 3, where 3 is the highest priority • Optional support for Critical Request Flow bit yields a total of 8 priorities • Responses must be higher priority than requests, to avoid deadlock • Under congestion, packets of higher priority may pass packets of lower priority in a RapidIO fabric Acknowledge ID (AckID) ● AckIDs are monotonically increasing sequential values that uniquely identify packets in the transmitted data stream ● AckIDs are found in packets and control symbols ● AckID management ensures reliable packet delivery www.IDT.co PAGE 7
  • 8. RapidIO Packet Format Payload: 256 Bytes Max 80 Bytes Physical Transport Layer Layer Header Header Logical Layer Packet Data CRC Header 280 Byte Maximum NOT TO SCALE www.IDT.co PAGE 8 Packet Data CRC
  • 9. RapidIO Physical Layer Physical Transport Layer Layer Header Header Logical Layer Packet Data CRC Header 6 Bits 1 2 Bits 1 AckID VC PRIO CRF 2 BYTES www.IDT.co PAGE 9 Packet Data 2 Bits 4 Bits TT FType CRC
  • 10. RapidIO Transport Layer Physical Transport Layer Layer Header Header Logical Layer Packet Data CRC Header Packet Data DestID Destination ID Source ID RapidIO packets are routed using Destination IDs Destination IDs are 8,16 or 32 bits in size. Packets can be multicast based on Destination IDs www.IDT.co PAGE 10 Port 0x34 0x35 0x36 0x37 0x38 1 3 5 2 7 CRC
  • 11. RapidIO Logical I/O Packet Format Physical Transport Layer Layer Header Header Logical Layer Packet Data CRC Header Packet Data Transaction RapidIO supports up to 66 bits of address, and all transactions required to perform multiprocessing and cache coherency (CC-NUMA). www.IDT.co Size 2 Bytes SrcTID Address PAGE 11 4, 6, or 8 Bytes CRC
  • 12. RapidIO Message Packet Format Physical Transport Layer Layer Header Header Logical Layer Packet Data CRC Header Packet Data CRC Msglen SSize Letter 2 Bytes Mailbox MsgSeg Messages: Up to 4KB sent using up to 16 packets. Logical layer responses are sent for every packet. Logical layer “Retry” response sent when no reassembly context is available www.IDT.co PAGE 12
  • 13. RapidIO Doorbell Packet Format Physical Transport Layer Layer Header Header Logical Layer Packet Data CRC Header 2 Bytes Rsvd SrcTID 2 Bytes Doorbells indicate one of 64K events using the 2 byte payload Doorbells can be retried just like Messages www.IDT.co PAGE 13
  • 14. RapidIO Data Streaming Packet Format Physical Transport Layer Layer Header Header Logical Layer Packet Data CRC Header Data Segment StreamID Seg Ctrl FC Op StreamID CRC Flow Control Class of Svc Packet Data FC Mask •Data Streaming: Up to 64K per transaction, no logical layer responses •Integrated flow control supports XON/XOFF, rate, and credit based algorithms. • Supports hardware virtualization implementations www.IDT.co PAGE 14
  • 15. RapidIO System Discovery DSP 0 uProc 2 1 Switch DSP 1 3 5 DSP 3 4 DSP 2 System discovery uses a recursive algorithm to - Discover location and connectivity of all switches and endpoints - Allocate destination IDs to DSPs - Configure switch routing tables Standard system discovery supports two redundant hosts www.IDT.co PAGE 15
  • 16. RapidIO for Fault Tolerant Systems Data Processing System Host DSP DSP DSP DSP Switch DSP DSP uProc DSP DSP Switch Redundant System Host uProc Switch Switch • Packets destined for the faulty endpoint must be discarded • Refer to Part 8 Error Management Extensions Section 1.2.4, table 1-1 • Timeouts can also be used to discard packets • Hardware must detect and rapidly notify the System Host of a failure • The hardware must begin discarding packets to prevent system congestion/failure •The System Host must receive notification, then diagnose, isolate and allow replacement of the faulty hardware www.IDT.co PAGE 16
  • 17. RapidIO Ecosystem DSP: several products In TCI64xx family Axxia Communications Processor FPGA: Arria and Stratix Family XLS416 family Multicore Processor FPGA: Virtex 4/5/6 families DSP, PowerQUICC & QorIQ multicore FPGA Switches, Bridges & IP CPS and Tsi Family Wireless Baseband Processor DSP Oct22xx Network Processor Octeon 2 family www.IDT.co PowerPC based processors Network Processor WinPath3 460GT PAGE 17
  • 18. Transcript ● Hello, and welcome to RapidIO 101. My name is Barry Wood. I'm an expert applications engineer working at IDT. I have contributed to the RapidIO spec for the past ten years, and I've also been the architect of some of IDT's RapidIO parts. Today I wanted to talk with you a little bit about RapidIO. ● Now most of you have probably not heard enough a lot about RapidIO, even though you likely use it every day indirectly. RapidIO is used in a great many of cell phone base stations. So if you use an LTE base station, that base station uses RapidIO technology. It's also likely that if you're using a 3G base station, you're using RapidIO technology. RapidIO is also used largely in military compute, so high-performance mobile compute as well as industrial control and medical imaging. You’ll find that RapidIO excels wherever there are size, weight, and power constraints, and the latest example of that is that RapidIO was selected by NASA and a number of other companies as the next generation Space Center Connect. If RapidIO can meet the size, weight, and power constraints of space, I'm sure it's ideal for your application. ● The RapidIO specification is a layered specification consisting of a logical transport and physical layer. The logical layer defines read/write and messaging semantics for use by RapidIO components. The transport layer defines how RapidIO packets are routed through a RapidIO fabric. And the physical layer defines the electrical encoding and electrical characteristics of RapidIO links. There are also a number of RapidIO specification parts that cut across the different layers. I'm going to talk about two of those today. The first is the RapidIO system bring-out specification, which defines how the RapidIO system is initialized, and the part eight error management specification, which finds the fault-tolerance support for RapidIO systems. The RapidIO specification is available in its entirety from www.rapidio.org. There is no charge. ● This chart shows a little about how the RapidIO specification is mapped to actual devices. The RapidIO ecosystem consists of two kinds of devices: endpoints and switches. Endpoints are devices that originate and process packets. Switches route packages to endpoints. So at the top you can understand that the logical layer specification largely applies to endpoints. In this chart, there is an example of a microprocessor sending a request to a DSP and receiving a response. The transport layer maps largely to RapidIO switch devices. The physical layer specification applies to every RapidIO link. At either end of the link are two link partners, or processing elements. These link partners exchange two kinds of information. The first is packets, and the second are control symbols. The use of control symbols allows RapidIO to guarantee the in-order delivery of packets from an endpoint to their ultimate destination. RapidIO control symbols have a unique capability among interconnect, in that they can be embedded within packets. This gives RapidIO the lowest-latency control path for flow control and error recovery of any interconnect. The transfer of packets is governed by two quantities. The first is the priority of the packet. The second is the acknowledge ID found in the packet, and also carried in control symbols. ● Control symbols carry two kinds of information. The first is information that the transmit side sends to the receiver directly. These are things like start of packet, end of packet, or a multicast event control symbol that signals an event has occurred within the RapidIO network. The other kind of information is information that the receiver is sending back to the transmitter. These are things like packet accepted, so a packet was successfully transferred, packet not accepted, so an error was detected, link response, or time stamp. ● These message sequence charts give some information about how RapidIO control symbols are used to ensure the reliable, in-order delivery of packets in a RapidIO fabric. The chart on the left shows success case RapidIO packet transfer. You'll note that the packet is delimited with a start of packet and terminated with an end of packet control symbol. That packet is then acknowledged. So with every hop through a RapidIO fabric, each link partner ensures that its link partner receives the RapidIO packet successfully before reusing the buffer for that RapidIO packet. You'll also see that packets can be terminated with a start of packet control symbol. So if you're sending many packets back-to-back, you can save some bandwidth by not sending an end of packet, but instead sending start of packet, packet, start of packet, and so forth. The middle message sequence chart shows how RapidIO flow control works. Most RapidIO devices will send packets to the receiver regardless of how many free buffers the receiver has. If the receiver does not have sufficient buffering to accept the packet, the receiver sends back a retry control symbol, indicating the acknowledgment ID of the packet that is being retried. The transmitter then sends a restart from retry control symbol, acknowledging receipt of the retry, and chooses a higher-priority packet to send. The exchange of control symbols usually takes less than 200 nanoseconds on a RapidIO link. A similar mechanism is used for error recovery, but instead of a retry control symbol the receiver sends a packet not accepted control symbol, indicating that a transmission error has been detected. The transmitter sends a link request control symbol requesting the acknowledgement ID of the next packet that should be sent. The link response contains that acknowledgement ID. Once that link response has been received successfully, packet transmission resumes. Again, the error recovery can occur in 300 nanoseconds or less on RapidIO links. This is far faster than the error recovery that Ethernet, with its end-to-end packet timeouts allows. ● This chart contains a little bit more information about priority and acknowledgement IDs. You can peruse that and read it at your leisure. ● This chart has a little bit more information about the packet format of RapidIO. You'll see that, just as it is a layered specification so the packet header is also layered with a physical transport and logical layer header. RapidIO packets longer than 80 bytes have an intermediate CRC in them, which allows a receiving endpoint to ensure the integrity of the transport and logical layer headers before they begin to process the packet. This is just one way that RapidIO was designed to minimize latency and maximize the efficiency of packet transfers between endpoints. ● The physical layer header is two bytes that actually contain a physical transport and logical layer header within them. The packet priority, as well as the acknowledgement ID are encoded in the physical layer header. The transport type bits, or "TT bits", determine the size of the following trans [audio skips] and the F type determines the packet format for the logical layer header which occurs in the packet. ● RapidIO devices are identified using an 8, 16, or 32 bit device ID. Any RapidIO packet contains two device IDs. The first is the destination ID, which is where the packet is being sent to. The second is the source ID, which is where the packet originated from. To route a packet, the destination ID is used to index into a routing table which determines the output port that the switch should send the packet to. Once a packet is received by an endpoint, if the endpoint must create a response for that packet, it simply switches the destination and source ID and sends back the response. I should note that RapidIO also supports multicast, in which case when the switch uses a destination ID to look up the output port, instead of a single port being returned, a bit vector of ports is returned. Every bit in that vector will receive a [audio skips]. ● I mentioned earlier that RapidIO supports read/write as well as messaging semantics. This chart contains some information about the read/write semantics, or how the read/write semantics of RapidIO are implemented. RapidIO supports a variety of read, write, automic, and castroherency operations that support RDMA as well as ccNUMA. ● RapidIO messaging has several different possible implementations. The first confusingly, is named a messaging packet. This chart gives some information about the format of messaging packets. RapidIO doorbells are a much shorter that indicate that an event has occurred in a system. Just like message packets, doorbell packets are designed to minimize the amount of silicon required to successfully receive and process them. For this reason, if there are insufficient resources to accept a doorbell packet at the receiver, the doorbell packet or message packet will cause a logical layer retry to occur. This is different from a physical layer retry, and it allows limited resources of embedded memory to be used exclusively to process RapidIO packets. So RapidIO does not need a lot of SDRAM bandwidth to efficiently and effectively deliver a lot of throughput and guaranteed latency. ● Data streaming packets are another mechanism that is used to support messaging semantics. So while messaging packets only support a 4 kilobyte transfer, data streaming packets support up to 64 kilobytes per transaction. Data streaming packets also support many many more queues than messaging packets. So they are ideal for virtualization. Data streaming packets also support extended header flow control. Extended header flow control was designed to manage quality of service in systems that use client-server kinds of architectures as well as publish-subscribe. Extended header flow control allows a client to communicate the degree that its queues are full to a server, and the server can then respond with either a simple X on X off, rate adjustment, or credit based flow control. This allows the server to very tightly control the quality of service, and hence the user experience that the system is delivering. ● This chart gives some information about the RapidIO system discovery algorithm. It's a very simple recursive algorithm where, for example the microprocessor first determines that it is connected to a switch. Using standard registers, it checks each switch port, what that switch port is connected to. Device IDs are allocated to the devices that are connected, and the switch routing tables are updated. Note that at this point, the memory map of the system does not need to be determined. That is because RapidIO routes packets based on device ID, and not on address. This allows RapidIO to support any system topology. ● RapidIO also has support for fault tolerance. If a RapidIO endpoint fails, or a link to that endpoint fails, a RapidIO switch can be configured to detect that failure within nanoseconds. It can also be configured to discard the packets that are destined for that failed endpoint. This prevents a cascade congestion failure from occurring in a RapidIO system, and allows the system host or the secondary host to diagnose and recover from the fault while the rest of the system continues to operate correctly. ● If you would like more information about RapidIO, please consult any of these companies or of course my own IDT. Thank you very much for your attention, and let's go RapidIO. www.IDT.co PAGE 18

Hinweis der Redaktion

  1. RapidIO has it’s roots in energy efficient, high performance computing. The protocol was originally designed by Mercury and Freescale as a replacement for Mercury’s “Raceway” proprietary bus, and as a replacement for Freescale’s PowerPC bus. The RapidIO Trade Association was formed in February of 2000, and included telecom and storage OEMs as well as FPGA, processor, and switch companies. The first revision of the specification defined a wide, parallel bus. This did not achieve wide adoption. The next revision defined a serial interconnect based on the XAUI physical layer. This has been wildly successful within telecom, military compute, medical imaging, and industrial applications. Subsequent revisions have repeated this success in these markets. The latest revision, 3.0, supports 10 Gbaud per lane links. Future revisions will be capable of going even faster, tracking the Ethernet physical layer development trajectory.
  2. RapidIO specification is publicly available from the www.rapidio.org website.. Like many others, it is a layered specification, with logical, transport, and physical layers roughly corresponding to the layers in the ISO OSI stack. The Logical I/O specification describes how address based reads and writes work, as well as special ‘maintenance’ packets used to access RapidIO registers. The Messaging specification, and the Data Streaming specification, describe two different ways to pass messages between RapidIO entities. Messages are widely supported in the RapidIO 1.3 ecosystem, while Data Streaming packets are widely supported in the RapidIO 2.1 ecosystem. The common transport layer specification describes how packets are routed by RapidIO switches. The multicast specification is an extension of the common transport layer which describes how packets may be multicast/broadcast by RapidIO switches. The physical layer defines the nuts and bolts of packet transmission. The physical layer encoding uses 8B/10B “XAUI” encoding for lane speeds up to 6.25 Gbaud, and 64/67B “Interlaken” encoding for speeds of 10.3125 Gbaud and higher. There are a couple of specification sections which cut across multiple protocol layers . These are the interoperability specification, and the Error Management specification.
  3. This chart shows how the logical, transport and physical layer specifications relate to RapidIO devices. The logical layer protocol describes how endpoints exchange information. In the diagram, the uProc sends a request to a DSP, and the DSP sends a response for that request. Generally, the logical layer is supported by endpoints – those entities which originate or are the ultimate receivers of RapidIO packets. The majority of transport layer requirements only apply to switches, as the transport layer describes how to route packets within a RapidIO fabric. Lastly, the physical layer applies to any two processing elements which are exchanging RapidIO packets on a RapidIO link. As shown in the diagram, a RapidIO link consists of two unidirectional paths. There are two kinds of information which are transferred in each path: Control symbols, which are used to delimit packets, acknowledge packets, and implement hardware error recovery. Control symbols are link specific. With two exceptions, control symbols are not passed from one RapidIo link to another. Packets, which contain the actual information being exchanged. Note that control symbols can be embedded within packets, as shown in the purple Packet 2 in the diagram. This gives RapidIO a great advantage over other protocols, as RapidIO has the best possible control path latency of any protocol. The ability to embed control symbols within packets also allows for low jitter distribution of events using a Multicast Event Control Symbol and Timestamp control symbols. Embedded control symbols also allow for rapid packet acknowledgements and other low latency flow control operations.
  4. This shows the parts of a RapidIO control symbol. Note that every control symbol actually contains two types of information: ‘Receive Side’, or Type 0, fields are used to send information from ‘A’s Receiver to ‘B’s transmitter, such as receiver buffer status, positive acknowledgement of packet reception, insufficient resources for packet reception, or detected corrupted information. ‘Transmit Side’, or Type 1, fields are used to send information from ‘A’s Transmitter to ‘B’s receiver, such as start of packet, cancel this packet, end of packet, or restarting transmission after error recovery. The packets which are the subject of the ‘Receive Side’ information are identified by a quantity known as an acknowledge ID, or simply an ackID. AckID values are found in the Parm0 field of Receive Side control symbols, and in the first few bits of RapidIO packets. The Link-Request and Link-Response control symbols are used to implement recovery from transmission errors, as shown in the next chart.
  5. This chart illustrates how control symbols are used to ensure packets are reliably delivered. The leftmost message sequence chart at the left shows successful delivery and acknowledgement of RapidIO packets. Note that the ‘Start of Packet’ control symbol can be used to simultaneously terminate a packet and start another one. The middle message sequence chart illustrates what happens when a packet cannot be received by it’s link partner due to lack of resources. The receiver causes it’s associated transmitter to send a Retry control symbol, which identifies the ackID of the packet which could not be accepted. The transmitter then starts transmission with a Restart-From-Retry control symbol, indicating that it received the Retry control symbol, and then begins transmission of packets. ‘Retries’ are used for ‘receiver based flow control’ at the physical layer. RapidIO also supports transmitter based flow control, which requires the receiver to periodically tell the link partner how many buffers are available to receive packets. The transmitter then only sends wheat it knows the receiver can accept. The rightmost message sequence shows the hardware based error recovery mechanism of RapidIO. In this case, it is not possible to identify the packet which was corrupted, as the ackID value could itself have been the subject of corruption. As a result, when a ‘Packet Not Accepted’ control symbol is received, the transmitter must query the receiver to determine what ackID is expected next. This is done using a Link Request control symbol. The link partner sends a Link Response control symbol identifying the ackID of the packet to be sent next. Packet retransmission then starts again.
  6. Two physical layer concepts are used to determine RapidIO packet ordering, and affect latency and throughput. The first concept is packet priority. RapidIO supports four packet priorities, numbered 0 through three, with three being the highest. The Critical Request Flow (CRF) bit, found in the physical layer header of all packets, can optionally extend this to 8 different priorities. Requests can be priority 0, 1, or 2. The priority of a response packet must at least one greater than that of the associated request. This avoids deadlocks. The second concept is the virtual channel, which was introduced in the RapidIO 2.0 specification. Nine virtual channels are supported. VC0 is compatible with RapidIO 1.3 and earlier. VC1-8 may have a percentage of link throughput allocated to them, guaranteeing quality of service for a given packet type.
  7. This is a diagram of a RapidIO packet. Note that the fields are nicely layered, enabling an efficient hardware implementation of logical, transport and physical functions. Each layer mayevolve independently without requiring changes to all layers. We successfully tested this design objective for the protocol when we migrated from the Parallel physical layer spec to the Serial physical layer, and again with every addition to the Logical layer. Note that the physical layer includes two CRC fields. The CRC code in the middle of the packet can be used by endpoints to determine the correctness of all of the information up to that point, so that processing of the packet can begin before the packet is completely received.
  8. The two byte physical layer header contains a number of fields for the physical, transport, and logical layer. Physical layer fields include the ackID, as well as the priority and Critical Request Flow bits. A Virtual Channel bit allows the priority and CRF fields to be interpreted as a virtual channel number. Virtual Channels enforce minimum bandwidth guarantees for different traffic classes. The “Transport Type” field determines the size of the Transport Layer Header, as described in the next chart. Lastly, the “Format Type” field indicates the logical layer header format.
  9. RapidIO packets are routed using quantities called Device IDs. There are two device ID values in every RapidIO packet: The Destination Device ID, or destID, and the Source Device ID, or sourceID. Device IDs can be 8,16 or 32 bits in size, on a per-packet basis. The destID and srcID are always the same size. Whenever a RapidIO switch receives a packet, it determines how to route the packet based on the packets destID. The usual mechanism for this is a look up table which is indexed by destID. A similar, but separate, mechanism is used to multicast packets. Where a non-multicast packet is routed to a single port, multicast packets are routed to a bit vector of ports.
  10. The logical layer header of a RapidIO packet depends upon the type of transaction. The Logical I/O header shown on this page is used for reads and writes. Note that the reads and writes include ‘atomic’ transactions for multprocessor mutual exclusion (‘mutex’) support. The read/write/atomic subtype is determined by the ‘Transaction’, or Ttype, field. The Size field indicates how much packet data is being requested/written. RapidIO supports up to 256 byte payloads for reads and writes. The source transaction ID (SrcTID) field is used to match requests with responses. A response to a request contains the same srcTID as the request. Lastly, the address field can support either 34, 50, or 66 bits of address space. Generally, RapidIO endpoints only support 34 bits of address, as Messaging and Data Streaming transactions can be used to more easily exchange information. The size of the address field is a global system value.
  11. The diagram above shows the logical layer header for a Message packet. It is possible to send up to 4 Kbytes in a message-based transfer by segmenting the payload into up to sixteen 256 byte payload packets. Every message packet must receive a logical layer response. The response can have one of three status indications: Done – the message segment was successfully received Error – there is an unrecoverable error while receiving this message, so it has been discarded Retry – insufficient reassembly resources exist for this message segment – send the message segment again. The ‘Retry’ response allows hardware implementers to handle the case where all reassembly contexts are occupied and a new request is received. This allows the number of reassembly context resources to be optimized/minimized, allowing lossless messaging with a small silicon footprint.
  12. The diagram above shows the logical layer header for a Doorbell packet. Doorbell packets are used to send events between RapidIO nodes. Just like Message transfers, the number of queues/entries for Doorbell acceptance can be optimized by hardware. Doorbells which arrive when the queue is full receive a “Retry” response, just like Message packets.
  13. The last packet type in the overview is the Data Streaming packet type, more commonly known as ‘Type 9’. Type 9 packets support the transfer of up to 64 Kbytes as a single transfer. Each packet has a maximum of 256 bytes of payload. Type 9 packets do not receive a logical layer response,so reassembly resources must be available whenever a Type 9 packet is received. There are two types of Type 9 packet – Data Segment, and Flow Control. The data segment packets contain a class of service/streamID indication which simplifies routing the information to a software/hardware resource for processing. The Flow Control, or extended header, format is used to perform network level flow control for Type 9 packets based on XON/XOFF, rate based, and/or credit based semantics. Note that the physical layer transmit/receive based flow control, in combination with the network layer flow control supported by Type 9 and dedicated Flow Control packets, gives RapidIO the best flow control story in the industry. The bandwidth in a RapidIO link can be used to efficiently deliver the throughput and latency required to meet your performance requirements – however your application defines performance.
  14. RapidIO system discovery is similar to PCIe bus enumeration, as shown in the numbered steps of the diagram. The processor first finds the switch device, and then checks each switch port to see what is connected there. As each endpoint is found, the endpoint is assigned a device ID. The switches routing tables are updated so that packets can be routed to the endpoint. The RapidIO standard supports system discovery with two redundant hosts. Each host uses a standard RapidIO register to gain exclusive ownership of a device. If there is a collision, the RapidIO host with the smaller locking value backs itself out of the system and waits to be discovered by the winning host If discovery does not occur in a specified time, It is assumed that the winning host has failed and so the losing takes over discovery of the system. Once the winning host has completed discovery, it releases ownership of all devices. The losing host, and all other endpoints in the system, then read the configuration of the system to learn what is connected where.
  15. This last chart describes the Error Management Extensions for RapidIO. The reliable packet delivery of RapidIO is a good thing, until a fault happens in the system. If packets cannot be delivered, they cause congestion which can lead to a cascade congestion failure of the system. The RapidIO Error Management extensions defines Standard error detection and information capture capabilities A ‘leaky bucket’ mechanism for determining that a link is failing or has failed Standard in-band notification mechanims for errors (maintenance port-write) A flexible reaction to link failure, whose options include packet discard Standard registers to completely isolate the system from a faulty node Support for ‘hot-swap’ – card removal and insertion which does not require system reset or power down. As a result of these standard mechanisms, RapidIO systems can achieve the fault tolerance requirements of many applications.
  16. The RapidIO Gen 2 ecosystem has grown to encompass many DSP, FPGA, NPU, and processor vendors.