COROTCNES/LESIA COROTLOG - the On-Board Software as German contribution for the COROT satellite 1 0 0 1 Developed by DLR, Ingenieurbüro Ulmer and CLIPhIT Presented byGisbert Peter,DLR/Optical Information SystemsTel.: +493067055382, Email: Gisbert.Peter@dlr.de
COROTCNES/LESIA COROTLOG - the On-Board Software as German contribution for the COROT satellite 1 0 Developed by DLR, Ingenieurbüro Ulmer and CLIPhIT 0 1 Presented byGisbert Peter,DLR/Optical Information SystemsTel.: +493067055382, Email: Gisbert.Peter@dlr.de
COROTLOG Main Tasks • DPU power-on management and S/C interface control • Telecommand and Telemetry management • Memory management for Application Software and parameter maintenance • Windows descriptor and Look-Up table management • DPU and software health checking • Event and error handling • BEX and BEX interface control • Astero and Exo data acquisition, processing and reduction within 1 and 32sec • Angle error measurement processing for S/C pointing
BEX1 • DPU1 • BS2 • PBS • Astero • Exo • APS • Proteus • Main • Red • BEX2 • DPU2 • PBS • Astero • Exo • APS • BS2 PBS and APS - the Main Components of COROTLOG • Two independent software components • - Primary Boot and Application Software • Installed on each DPU (RT addresses 1 and 2) • Primary Boot Software (PBS) • - SECURE state S/W located in PROM • Power-on procedure and S/C interface control • Memory management • Application (secondary boot) S/W maintenance • Application Software (APS) • - OPERATIONAL state S/W • located/changeable in EEPROM or RAM • S/C interface control • BEX interface and BEX control • Astero and Exo data processing
Application Software (APS) stored and changable in EEPROM • Primary Boot Software (PBS) permanently stored in PROM • COROTCASE COROTLOG – a Sub-system of the COROT Instrument • COROT • COROTCASE • COROTLOG on DPU COROT DPU, ESA/Astrium GmbH
COROTCASE COROTLOG – a Sub-system of the COROT Instrument • COROT • COROTCASE • COROTLOG on DPU
Application Software (APS) stored and changable in EEPROM • Primary Boot Software (PBS) permanently stored in PROM • COROTLOG on DPU COROT DPU, ESA/Astrium GmbH
Software Operation - Example • Start-up • Astero image acquisition • Astero Rough/Fine pointing and scientific processing service • Exo image acquisition • Exo scientific processing service • Long term operation Such an operational procedure needs up to about 1400 telecommands to be commanded for initialization and start and produces telemetry data up to about 70kbit/sec
Software Operation – (1) Start-up • Power-on DPU to go in Secure state (PBS is active), power-on BEX, etc. • Hardware initialization • Time synchronization for telemetry time stamping • Start of APS from EEPROM by telecommanding to enter the Operational State • BEX interface initialization after successful boot and start the APS in RAM
Software Operation – (2) Astero Image Acquisition • Initialization of an Astero Image Acquisition Service (AIAS) by telecommanding with related parameter • Start of AIAS to receive Astero full images (for star selection on-ground) • Data processing of Astero Image(s) and send telemetry data to S/C+ground (an image takes more than 7 minutes for TM transfer)
Initialization of a Astero Scientific Processing Service (ASPS window descriptor table for max. 5 stars and related parameters) • Initialization of a Astero Rough/Fine Pointing Service (ARPS, AFPS, at least commanding of 2 stars window descriptor table + related parameter) • Built Astero Look Up Table started by TC • Start of ARPS/AFPS and/or ASPS by telecommanding, initialize the BEX and start Astero window acquisition from BEX to DPU every 1sec • Data processing of Astero Windows (offset, background and star windows) • Send angle error data to AOCS and telemetry data to S/C+ground every 1sec, 8sec and 32sec (or longer depends on parameter configuration) Software Operation – (3) Astero Rough/Fine Pointing/Science Proc.
Software Operation - (4) Exo Image Acquisition • Initialize the Exo Image Acquisition Service (EIAS) by telecommanding with related parameters • Start of EIAS to get a full Exo image (for star/imagette selection and window descriptor table creation on-ground) • Data processing of Exo Image(s) and send telemetry data to S/C+ground (an image takes more than 7 minutes for TM transfer)
Software Operation - (5) Exo Scientific Processing Service • Initialization of a Exo Scientific Processing Service (ESPS) by telecommanding of an descriptor table of max. 6000 windows • Built Exo Look Up Table by APS • Start of ESPS by telecommanding, initialize the BEX and start Exo windows acquisition from BEX to DPU every 32sec • Data processing of Exo Windows (chromatic, monochromatic, imagette) • Sending of processed results as telemetry data to S/C+ground every 32, 512 or 1024sec (or longer depends on parameter configuration)
Main Characteristics • High reliability of software operation over a long time (months) • Providing of angle error data with high accuracy (1/20 sub-pixel) for Spacecraft pointing • Complex telecommand and telemetry interfaces (84 different types of telecommands with over 200 parameter, 43 different types of telemetry packets) • Real time data processing and controlling within 1sec (Astero channel) and 32sec (Exo channel) • Complete changeable of Application Software from ground by TC upload
PBS Today APS Today Development Life Cycle • Requirement, Design and • Qualification Engineering are • the 3 phases for software • development • Separate life cycles for Primary • Boot Software (PBS) and Application Software (APS) development • Additionally there is a support • and maintenance phase after delivery.
Development Tools and Methods • Methods: Structured and object oriented analysis • Structured design • Standards: ESA ECSS • Tools: • Configuration management Rational ClearCase • Problem tracking Rational ClearQuest • Requirement management Rational RequisitPro • Test automation Rational TestRealTime • Rational Testmanager • Software modelling Rational Rose RealTime (only APS) • Implementation and unit test ADSP21020 tool family, Emulator, Simulator
High Reliability, a Key Aspect for COROT Operation (1) The software has to operate about 150 days without interruption ! Feature for getting a high reliability (i.e. low probability of S/W failures) • Software must be resistant against the South Atlantic Anomaly (SAA). • Therefore the software runs in red-hard Program and Program Data Memory. • It guarantees a probability of software interruption of less than once every 1000 days (due to Single Event Upsets, SEUs). • A watch-dog is implemented to avoid software end-less loops. • Long term tests and stress tests are foreseen during validation with DLR automatic test system.
High Reliability, a Key Aspect for COROT Operation (2) Low probability of data failures • Data are stored in SEU sensitive Image RAM (DPU Extension Board RAM) • The Error Detection and Correction device (EDAC) is used to avoid single bit failures due to SEUs • Scrubbing of Image RAM is foreseen to avoid double bit failure • Long terms parameter are stored in red-hard Data Memory RAM • A data unavailability of better than 0,0001% is expected.
Primary Boot Software Design Overview Programming language: 100% Assembler Number of components: 36 Code size: 4588 instructions (92% of PROM size) Test coverage: 100% Spacewire 1355 boot loader (from Astrium) are integrated to support DPU Flight Model testing and VIRTUOSO host level debugging within a “Development mode”. The design is compatible for the DPU FM and EM without any changes.
Application Software Design Overview Number of Virtuoso tasks: 17 (task communication by message passing) Estimated code size: 50900 instructions (20% usage of program memory without parameter) Data memory size: about 6000 kWords (72% usage of data memory) Number of components: 160 (written in C and Assembler) Shortest latency: MIL/Proteus interface - every 100µs one TC BEX interface – every 600µs one BEX packet The design is compatible for the DPU FM and EM.
VIRTUOSO (Windriver) the RTOS Kernel • Small code size • VIRTUOSO takes less than 10k instructions • for the whole functionality • High reliability • Task execution by priority driven • pre-emptive multi-tasking • - Well tested in a lot of commercial applications • - Already used for other Space applications • High performance • - ADSP21020 optimized Assembler code • Very short context switching times • in the order of few µsec • VIRTUOSO V4.2.3 is used for COROT Host Level debug view of VIRTUOSO Note: next versions of Virtuoso are re-named to VspWorks (Windriver)
Idle 64,0% Exo data acquisition and processing 4,6% Astero data VIRTUOSO acquisition and 2,3% processing Scrubbing 25,5% 1,3% AOCS (AS16) interface Health management 0,1% 0,5% MIL TM transfer MIL TC receipt 1,5% BEX commanding 0,1% 0,1% Application Software Performance / Computing Power DPU duty cycle in Astero and Exo worst case mode operation • Computing power (incl. uncertainty): • Total: < 36% • DPU Idle: > 64% • Analysis results
Astero Fine Pointing Processing – Prototyping Error Angle Accuracy (1) • Sigma of error angle accuracy as function of read-out noise
Astero Fine Pointing Processing – Prototyping Error Angle Accuracy (2) • Sigma of angle error accuracy as function of magnitude 5,5m …9,3m
Automatic Test System for Validation Testing • A special test system has been developed in order to fulfill the high quality and reliability requirements with the following tasks: • Proteus and BS2 interface simulation (hard- and software) • TC/TM processing • BEX interface and data simulation (hard- and software) • Functional performance testing • Data accuracy performance testing • Reliability and stress tests • Error simulation • Test case reporting • Data base maintenance
Automatic Test System - Design and Facilities • Spacecraft Interface Simulator (SIS) • BEX Interface Simulator (BIS) • Test Manager/Executor • Test data base • GUI for SIS • GUI for BIS
Automatic Test System - Performance • - Automation and real-time performance due to the virtual testers concept • Integration of a test system into common project data base (ClearCase) • - High reliability of the test execution • - High degree of test coverage • Traceability through Requisite Pro and Test Manager • Long term tests under real time conditions • “Re-test all” approach is possible with less effort in case of issuing a new S/W release • Rational Test RealTime
Application Software Maintenance (1) • Normally the Application Software is stored/uploaded in EEPROM. • In case of EEPROM failure it is possible to upload and start the APS directly in RAM. • Up to 8 different and independent APS executables are able to store in EEPROM. This allows uploading/changing and testing of an APS version without overwriting the current APS working version. • More than 7000 TCs are needed to upload a complete APS. It takes more than 8 minutes (on-ground).
APS development or change request or bug fixing • APS qualification and prel. acceptance at DLR • Production and delivery of TC list containing APS release (COROT EGSE/ground segment format) • Installation of APS release at LESIA/CNES using COROT EGSE or ground segment facilities • Final acceptance and operation of APS release Application Software Maintenance (2) • APS release production at DLR • APS maintenance is provided • during COROT integration • during COROT test • during COROT operation • for EM and FM models
Status of Primary Boot Software Development • CDR (Critical Design Review) has been performed April 2003 • Primary Boot Software (PBS) development and test is finalized • PBS interface and acceptance tests has successfully been performed at ALCATEL with the Proteus simulator • PBS is ready to be burned in PROM for Flight Model DPU manufacturing • Acceptance data package and code has been delivered
Status of Application Software Development • PDR (Preliminary Design Review) has been performed November 2003 • Coding has been started • First delivery is February 2004 (release for EM testing) • Fight level software delivery is October 2004 • Final delivery is planned for February 2005 • Support phase for S/C integration and tests is planned up to end of 2005
COROTCNES/LESIA Thanks for your attention 1 0 0 1 the COROTLOG team
COROTCNES/LESIA Thanks for your attention 1 0 0 1 the COROTLOG team