350 likes | 487 Views
TDS Flight Software. Jason Hinze University of Minnesota. Roadmap. TDS hardware overview FSW development tools and techniques FSW l evel 4 requirements FSW h igh-level design diagram FSW subsystem descriptions. TDS Hardware Overview. TDS FSW Development Tools and Techniques.
E N D
TDS Flight Software Jason Hinze University of Minnesota
Roadmap TDS hardware overview FSW development tools and techniques FSW level 4 requirements FSW high-level design diagram FSW subsystem descriptions
TDS FSWDevelopment Tools and Techniques Highly-orthogonal C code modules Minimal SPARC assembly language Lightweight task dispatcher GCC cross-compiler suite Subversion (SVN) repository Heritage code from STEREO/WAVES FSW Shared code with FIELDS DCB FSW
System Manager SubsystemDescription Initializes CPU and memories at boot-time. Selects and invokes software images from EEPROM. Coordinates transitions to/from Safe Mode. Programs and dumps EEPROM. Writes and dumps CPU RAM.
Spacecraft Interface SubsystemDescription Drives the two bulk asynchronous serial port peripherals connected to the A/B communication links to the spacecraft. Receives Spacecraft Time and Status Message from the spacecraft. Forwards spacecraft time information to Real-Time Clock subsystem. Sends Instrument Critical Housekeeping Data to the spacecraft. Receives telecommands from the spacecraft. Sends telemetry to the spacecraft via the active serial port.
DCB Interface SubsystemDescription Drives the CDI slave peripheral connected to the DCB. Receives the Spacecraft Clock Message from the DCB. Forwards time information to the Real-Time Clock subsystem. Receives telecommands from the DCB Sends telemetry to the DCB Coordinates TDS/DCB failover activities.
MAGi Interface SubsystemDescription • Drives the CDI master peripheral connected to MAGi. • Sends Sample Clock Messages to MAGi. • Sends commands to MAGi. • Collects raw magnetometer data from MAGi. • Reduces magnetometer data for Coordinated Burst Signal. • Reduces magnetometer data for SWEAP. • Reduces magnetometer data for science telemetry. • Generates CCSDS telemetry packets from science telemetry data. • Low-rate data to the Spacecraft • High-rate data to the DCB
SWEAP Interface SubsystemDescription Drives the CDI master peripheral connected to SWEAP. Sends Sample Clock Messages to SWEAP. Collects health and status information from SWEAP. Sends commands to SWEAP. Sends the SWEAP-format magnetometer data vector to SWEAP. Sends the Coordinated Burst Signal from the DCB to SWEAP.
AEB2 Interface SubsystemDescription Collects health and status information from AEB2. Controls the antenna electronics in AEB2.
LNPS2 Interface SubsystemDescription Collects health and status information from LNPS2. Controls the electronics in LNPS2.
TDS Acquisition SubsystemDescription • Controls analog muxes to select TDS channel inputs. • Multiple plasma wave E-field data sources • Plasma wave B-field data source • One additional pseudo-channel collects SWEAP particle counts. • Calculates a quality metric for each acquired TDS event. • Directs the TDS memory controller to store the next acquired event into the buffer corresponding to the lowest-quality stored event. • Telemeters the highest-quality stored event when telemetry allocation is available. • Generates CCSDS telemetry packets from selected TDS event.
Housekeeping SubsystemDescription Collects health and status data from all subsystems. Generates CCSDS telemetry packets from collected health and status data.
Instrument Status Reporting SubsystemDescription Collects instrument status data from all subsystems. Generates CCSDS telemetry packets from collected instrument status data.
Telemetry Manager SubsystemDescription • Receives CCSDS telemetry data from all telemetry-generating subsystems. • Applies quota and priority constraints to telemetry stream by APID. • Routes telemetry to Spacecraft Interface or DCB Interface by APID. • Distinct routing criteria for master and slave mode.
Command Manager SubsystemDescription Receives telecommands from Spacecraft Interface. Receives telecommands from DCB Interface. Receives local commands from local command sources. Distributes commands to all subsystems as needed.
Real-Time Clock SubsystemDescription Maintains a real-time clock synced to the spacecraft. Maintains a real-time clock synced to the DCB. Selects a real-time clock for local use depending on current failover mode. Makes selected real-time clock available to all subsystems.