Differences Between RMAP & GAP - PowerPoint PPT Presentation

differences between rmap gap n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Differences Between RMAP & GAP PowerPoint Presentation
Download Presentation
Differences Between RMAP & GAP

play fullscreen
1 / 16
Differences Between RMAP & GAP
122 Views
Download Presentation
sue
Download Presentation

Differences Between RMAP & GAP

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. Differences Between RMAP & GAP Daniel Gilley Lockheed Martin 2006 MAPLD International Conference Washington, D.C. September 25, 2006

  2. Problems Associated with SpaceWire Network Implementations • Standard SpaceWire packets provide: • No information about the nature of the data / desired operation • No way for the destination to reply with status to the source • No way to verify the data was transmitted correctly • No way to perform asynchronous read operations • … and more

  3. The Solution • A protocol that lives inside a standard SpaceWire packet (‘upper layer protocol’) offers solutions to these problems, providing a basis for reliable transport within a network

  4. SpaceWire Packets

  5. Protocol ID Byte

  6. GAP Overview • GAP (“General Access Protocol”) includes 3 transaction types • Write Request / Response • Read Request Untargeted / Response • Read Request Targeted / Response • Each transaction includes a header with a command id, return address, options fields, a checksum, and command-specific information

  7. GAP Write / Response • ‘A’ sends a write request to ‘B’ • ‘A’ sends a write request to ‘C’ • ‘B’ replies with a success response to ‘A’ • ‘C’ replies with an error response to ‘A’

  8. GAP Targeted Read / Response • ‘A’ sends a read request to ‘D’ • ‘D’ replies with data for ‘A’ – the node in ‘A’ automatically puts the read data into memory and interrupts software when it is completed

  9. RMAP Overview • RMAP, created by ESA, has 3 transactions: • Write Request / Response • Read Request / Response • Read-modify-write Request / Response • Each transaction includes a header with packet type, source address, transaction ID, and transaction-specific information.

  10. RMAP Write / Response • ‘A’ sends an acknowledged write request to ‘B’ • ‘A’ sends a verified write request to ‘D’ • ‘B’ replies with a success response to ‘A’ • ‘D’ replies with an error response to ‘A’

  11. RMAP Read / Response • ‘A’ sends a read request to ‘D’ • ‘D’ replies with data for ‘A’ • The software in ‘A’ reads the reply and takes appropriate action

  12. RMAP Read-modify-write / Response • ‘A’ writes masked data to a register in ‘C’ • ‘C’ sends a success reply to ‘A’

  13. GAP vs RMAP, Similarities • GAP and RMAP are similar: • Both have read and write transactions • Both have the protocol ID byte • Both have similar fields in their headers • Both provide means for destinations to send replies to sources • Both provide an additional layer of data validation

  14. GAP vs RMAP, Differences • GAP provides: • Automatic copying of read reply data into the memory of the requesting device • RMAP provides: • Verification of write data before it is written to destination memory • One transaction for read-modify-write operation

  15. GAP vs RMAP Summary • GAP is most useful in situations where there are a lot of packets that software has to process • Example: Flight software receiving regular telemetry data from various spacecraft subsystems • RMAP is most useful in situations where small amounts of data need to be verified before being written • Example: A controller device with bitmapped values for control registers

  16. Supporting GAP and RMAP • Best solution would be a device which supports both GAP and RMAP • Decoding method for each protocol could be determined by value of protocol byte or configuration register