210 likes | 646 Views
The CCSDS Spacecraft Onboard Interface Services (SOIS) Standards An Introduction. Stuart Fowell. 6 th October 2009. Overview. SOIS Standardisation, OSI and SOA SOIS Architecture SOIS Services SOIS Prototyping and Reference Implementation. CCSDS SOIS Standardisation.
E N D
The CCSDS Spacecraft Onboard Interface Services (SOIS) StandardsAn Introduction • Stuart Fowell 6th October 2009
Overview • SOIS Standardisation, OSI and SOA • SOIS Architecture • SOIS Services • SOIS 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 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. SOIS Introduction
SOIS Architecture • Organised into layers: • Subnetwork Layer provides access to the Data Link medium and provides a set of SOIS-defined services over the subnetwork defined by that medium • Transfer Layeroptionally 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 SOIS-defined services • All managed by Communication Management SOIS Introduction
Typical subnetwork Data Link Protocol Data Link Protocol Subnetwork = Physical I/F Physical I/F Datalink = Basic communication protocol Physical = Connector, Pinout, electrical 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 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 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 • 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 • CAN • 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) SOIS Introduction
Device Commanding, Data Acquisition & Virtualisation SOIS Introduction
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 SOIS Introduction
File Services SOIS Introduction
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 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 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 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 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 SOIS Introduction
RASTA Test Facility • 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 SOIS Introduction
SOIS Software Suite Acceptance Testing – Reference Mission • Low Cost, Single Instrument, Earth Observation Mission 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 SOIS Introduction