Intro to SOIS v2.1 - CWE

advertisement
The CCSDS Spacecraft Onboard Interface Services (SOIS) Standards
An Introduction
Stuart Fowell
6th October 2009
Overview
SOIS
SOIS
SOIS
SOIS
2
Standardisation, OSI and SOA
Architecture
Services
Prototyping and Reference Implementation
SOIS Introduction
CCSDS SOIS Standardisation
The Consultative Committee for Space Data Standards (CCSDS) developing
recommendations for communication services onboard a spacecraft, handled by the
Spacecraft Onboard Interface Services (SOIS) area
SOIS aims to provide a consistent interface to various low-level access methods,
enabling a common interface to the application software
This is achieved through the providing a uniform set of services over any
subnetwork
Eventual goal is reusable software that can be easily ported to new missions and run
on a range of onboard buses without substantial modification
Beyond the uniform set of services over any subnetwork, this goal is to standarise
interfaces to devices
Late configuration changes, e.g. relocation of thermistor, can be accommodated
through simple spacecraft database changes without affecting onboard software
Consistent interface should provide an enabler for more complex, higher-level
software architectures, e.g. fault-tolerant, distributed, software frameworks and
autonomous, onboard mission planners
3
SOIS Introduction
SOIS, OSI and SOA
SOIS defined with reference to OSI, similar to aspects of SOA
SOIS defined as a layered architecture and services provided by each layer
Each service defined in terms of:
Service interface offered to higher layers
Protocol engine (procedures and PDUs)
May include time-outs on receiving PDUs
Required services from lower layers
Management Information Base (MIB)
All defined using structured English
Abstract definition, with no reference to implementation in hardware or software,
programming languages, APIs etc.
4
SOIS Introduction
SOIS Architecture
Mission
Specific
Applications
Application
Layer
Communication Management
Application
Support Layer CMD & Data
Acquisition
Services
Transfer
Layer
Time
Access
Service
File &
Packet Store
Services
Message
Transfer
Service
Device
Enumeration
Service
Transport Protocol
Network Protocol
Subnetwork
Layer
Memory
Access
Service
Packet
Service
Synchronisation
Service
Device
Discovery
Service
Test
Service
Datalink Convergence Protocols
Milbus
Organised into layers:
SpaceWire
CAN
Wireless
Subnetwork Layer provides access to the Data Link medium and provides a set of SOISdefined services over the subnetwork defined by that medium
Transfer Layer optionally provides Transport- and Network-layer services based on existing
protocols
Application Support Layer provides a number of capabilities commonly required onboard a
spacecraft
Application Layer consists of mission-dependent applications that make use of the SOISdefined services
All managed by Communication Management
5
SOIS Introduction
Typical subnetwork
Subnetwork =
Data Link Protocol
Data Link Protocol
Physical I/F
Physical I/F
Datalink = Basic communication protocol
Physical = Connector, Pinout, electrical
6
Data Link Protocol
Data Link Protocol
RS422
RS422
ECSS Milbus Ext protocol
ECSS Milbus Ext protocol
Milbus
Milbus
ECSS SpaceWire Datalink
ECSS SpaceWire Datalink
ECSS SpaceWire Physical
ECSS SpaceWire Physical
SOIS Services
SOIS Subnetwork Layer
Device Commanding, Data Acquisition & Virtualisation
File and Packet Store Access
Onboard Time Access
Message Transfer
Device Plug-and-Play
7
SOIS Introduction
SOIS Subnetwork Layer
Standardise basic communication services to be provided by a subnetwork
Services are mapped onto protocols and services provided by different data
medium e.g. SpaceWire, MIL-STD-1553B and CAN
Not all services need to be provided by a subnetwork type
Provision against system requirement should be used to drive subnetwork
selection
Packet Service – providing packet delivery over a single subnetwork
Memory Access Service – providing direct access (memory location
read/write, includes block move and read/modify/write) to device memory
Synchronisation Service – providing spacecraft time and event
synchronisation
Test Service – providing establishment of subnetwork functionality and
availability
8
SOIS Introduction
SOIS Subnetwork Layer Mappings
MIL-STD-1553B
ECSS-E-ST-50-13C, “Interface and communication protocol for MIL-STD-1553B data
bus onboard spacecraft”, 15 November 2008
Influenced by early drafts of SOIS services
Prototype mapping for BCs done by Astrium, RUAG
Recommended mapping for BCs and RTs to be produced in SOIS prototype
SpaceWire
CAN
9
ECSS-E-ST-50-12C, “SpaceWire - Links, nodes, routers and networks”, 31 July 2008
ECSS-E-ST-50-51C, “SpaceWire protocol identification”, 5 February 2010
ECSS-E-ST-50-52C, “SpaceWire - Remote memory access protocol”, 5 February
2010
ECSS-E-ST-50-53C, “SpaceWire - CCSDS packet transfer protocol”, 5 February 2010
QoS being addressed in variety of R&D projects, e.g. SpaceWire-RT/T/D protocols
from SpaceNet project (University of Dundee)
Prototype mappings done by SciSys, UoD
Recommended mapping to be produced in SOIS prototype
ECSS working group in progress
Mapping to SOIS included in WG charter
Draft expected end 3Q 2010
SOIS Introduction
Device Commanding, Data Acquisition & Virtualisation
Typically used to access spacecraft hardware devices such as sensors and actuators
Allows reconfiguration of subsystems (e.g. change location, port etc) or replacement
of devices (Star Tracker type A -> B) without affecting users
Device Access Service – device-dependant driver providing basic reading from and
writing to devices regardless of location
Encapsulates access methods (protocol and addressing) to devices
Mapped onto subnetworks’ Memory Access and/or Packet Services
May be driven by Electronic Data Sheets (dynamic or build-time auto-code
generation)
Device Data Pooling Service – maintaining an image of the states of a number of
devices
Periodic data acquisitions from devices
Device Virtualisation Service – standard device driver providing reference to a
device using a virtual, i.e., generic, image of a physical device
Standardise device interfaces into classes and associated functions
Map class interfaces to actual interfaces – “virtualisation”
May be driven by Electronic Data Sheets (dynamic or build-time auto-code
generation)
10
SOIS Introduction
Device Commanding, Data Acquisition & Virtualisation
OBC
User
Applications
Device 1
Device 1 Functionality
Device 2
Device 1
Class & Type
Device 3
Class & Type
Device 2
Class & Type
Device 2 Functionality
Device 2 Memory
Locations
(e.g. Status and
Command Registers)
Device Virtualisation Service
Device Access Service
Device 1 Value ID to
Access Protocol
Mapping
Device 1 Access
Protocol
Device 1 Access
Protocol
Device 3 Value ID to
Driver Mapping
Device 2 Value ID to
Address Translation
Subnetwork Packet
Service
Subnetwork Packet
Service
Device 3 Driver
Subnetwork Memory
Access Service
Subnetwork-Specific
Packet Protocol
Subnetwork-Specific
Packet Protocol
Subnetwork-Specific
Memory Access
Protocol
Device 3 Functionality
11
SOIS Introduction
Subnetwork-Specific
Packet Protocol
File and Packet Store Access
Provides access to the spacecraft storage system
Encapsulates access methods (protocol and addressing) to storage systems (e.g.
mass memories)
Can be provided at 2 levels:
Network file access protocol, e.g. NFS, mapped onto subnetwork’s Packet Service
Remote block storage protocol, e.g. ATA, mapped onto subnetwork’s Memory
Access Service, e.g. RMAP, or subnetwork’s Packet Service
File Access Service – allows access to files and portions of their contents in local or
remote file stores
File Management Service – allows management of files and directories in local or
remote file stores
Packet Store Access Services – allows storage, retrieval and deletion of packets in
a local or remote packet store
Packet Store Management Services – allows management of packet stores in
local or remote packet store systems
12
SOIS Introduction
File Services
OBC
User
Applications
SSMM
providing a File System I/F
Data Storage
File Access and
Management Services
Service Primitives
File System
13
File System
Network File
Access Protocol
Network File
Access Protocol
Subnetwork Packet
Service
Subnetwork Packet
Service
Subnetwork-Specific
Packet Protocol
Subnetwork-Specific
Packet Protocol
SOIS Introduction
SSMM
providing flat Memory I/F
Data Storage
Data Storage
Remote Block
Storage Protocol
Remote Block
Storage Protocol
Subnetwork Packet
Service
Subnetwork Packet
Service
Subnetwork-Specific
Packet Protocol
Subnetwork-Specific
Packet Protocol
Onboard Time Access
Providing access to a local time source
Local time source may be synchronised with a master time source using a
subnetwork’s Synchronisation Service
Time Access Service – providing access to, one-shot alarms and metronomes
based on local time source
14
SOIS Introduction
Message Transfer
Discrete message transfer between applications/higher-level services
Isolates users from location
For inter-processor comms, maps onto subnetwork’s Packet Service
For intra-processor comms can use RTOS message queues
Four messaging models:
Send/receive
Query/response
Publish/subscribe
Announce (similar to multi-cast)
Can be used as basis for middlewares/software bus or for inter-partition
communication
Message Transfer Service – providing application-to-application message
exchange
15
SOIS Introduction
Device Plug-and-Play
Plug-and-play of devices
Device (and network) discovery
E.g. discovery of powered up 1553 RTs or SpaceWire links, routers etc.
Management of subnetwork
E.g. allocation of addressing, configuration of routing
Service discovery
E.g. by reading Electronic Data Sheets (xTEDS) from device
User notification of discovered devices
Subnetwork Device Discovery Service – providing dynamic device recognition
Device Enumeration Service – providing support for dynamic spacecraft
configuration
16
SOIS Introduction
SOIS Recommendations
Latest draft documents can be found in the SOIS working group’s collaborative working environment
(CWE)
http://cwe.ccsds.org/sois/default.aspx
CCSDS SOIS Informational Report, CCSDS 850.0-G-1, June 2007
2nd issue being published in 2010
Published as standard:
SOIS Subnetwork Packet Service, CCSDS 851.0-M-1, December 2009
SOIS Subnetwork Memory Access Service, CCSDS 852.0-M-1, December 2009
SOIS Subnetwork Synchronisation Service, CCSDS 853.0-M-1, December 2009
SOIS Subnetwork Device Discovery Service, CCSDS 854.0-M-1, December 2009
SOIS Subnetwork Test Service, CCSDS 855.0-M-1, December 2009
Under Publication
SOIS Device Access Service, CCSDS 871.0-R-2.1, March 2010
SOIS Device Data Pooling Service, CCSDS 871.1-R-2.1, March 2010
SOIS Time Access Service, CCSDS 872.0-R-2.1, March 2010
About to undergo 2nd and final agency review:
SOIS File and Packet Store Services, CCSDS 873.0-R-1.5, March 2010
About to undergo 1st agency review:
SOIS Message Transfer Service, CCSDS 875.0-R-0.4, March 2010
Under developmment:
SOIS Device Virtualisation Service, CCSDS 871.2-R-0.2, January 2009
SOIS Device Enumeration Service, CCSDS 871.3-R-0.1, January 2009
17
SOIS Introduction
SOIS Reference Implementation
SOIS Reference Implementation Study
ESA TRP
Jan 2008 – Feb 2009
SciSys prime, EADS Astrium sub-contractor
Objectives
Prototype the SOIS Software Suite within ESA’s RASTA facility
Provide feedback on the outcome of the prototyping in order to refine and complete
the CCSDS SOIS recommendations
18
SOIS Introduction
RASTA Test Facility
RASTA 01
RASTA Monitor
Ground PC
RASTA 02
RASTA 03
SpW router
Ground PC
Power strip
RASTA Server
Reference Avionics System Test-bench Activity (RASTA)
RASTA OBC supplied by Aeroflex Gaisler
LEON2 ASIC (100 MHz) @ ESA or LEON3 FPGA (40 MHz) @ SciSys
3 x SpaceWire links
2 x MIL-STD-1553B BC, RT or BM
+ others (CAN, Ethernet, UART and Direct I/O)
RTEMS 4.6.5 + drivers
STARDundee USB-SpaceWire Router & Linux PCs
PCI MIL-STD-1553B cards & Linux PCs
19
SOIS Introduction
SOIS Software Suite Acceptance Testing – Reference
Mission
Platform OBC
Payload OBC
MIL-STD-1553B
SpaceWire Link
SpaceWire Link
SpaceWire Link
SpW
Router
SpaceWire Link
SpaceWire Link
Star Tracker
Reaction
Wheel
TM/TC
Module
Data Storage
Instrument
Low Cost, Single Instrument, Earth Observation Mission
20
SOIS Introduction
SOIS Proof of Concept
SOIS Proof of Concept Study
ESA TRP
December 2009 – January 2011
SciSys prime, EADS Astrium sub-contractor, Gaisler equipment supplier
Objectives:
Standardise SOIS APIs
Implement all SOIS services, running over SpaceWire and MIL-STD-1553B
Inc. mapping onto ECSS-E-ST-50-13C for MIL-STD-1553B (BC and RT)
Optimise and characterise implementation of SOIS services on RASTA
Integrate SOIS services with other Avionics Components
TM/TC Module and Ground Unit, PUS, CFDP
SpaceWire-based Advanced Mass Memory & File Store
Legacy MIL-STD-1553B Remote Terminal Units
Prototype use of Electronic Data Sheets for SOIS Plug-and-Play
Develop SOIS Demonstrator
Provide Feedback to CCSDS
21
SOIS Introduction
Download