National Aeronautics and Space Administration NASA’s Core Flight Software - a Reusable Real-Time Framework Topics: • Core Flight Software (CFS) Overview • Case Study: Morpheus Lander • JSC CFS Development Efforts • CFS Training Slides Lorraine Prokop, Ph.D. lorraine.e.Prokop@nasa.gov Advanced Exploration Systems Core Flight Software Project Manager NASA – Johnson Space Center (JSC) November 2014
Core Flight Software (CFS) Background Context § What is CFS? – NASA Agency Asset for Spacecraft Flight Software Reuse (http://cfs.gsfc.nasa.gov/) • Productized real-time flight software developed over several years by Goddard Space Flight Center to serve as reusable software framework basis for spacecraft missions, test missions, real-time systems – Fully tested, documented, operational with LRO spacecraft, several other operational missions since – Published Service Layer (cFE) and open source Operating System Abstraction Layer (OSAL) for common services • Pub/sub message bus, time services, events, tables, file, task execution (http://sourceforge.net/projects/coreflightexec/files/cFE-6.4.0/) • Runs on multiple platforms and with several operating systems (http://sourceforge.net/projects/osal/) – Apps or “bubbles” for common spacecraft functions provided as government open source reuse (available source forge shortly) • Scheduler, commanding, telemetry, communication, data recording, limits, system health, sequences § Why use it? – Proven rapid deployment -- Saves software development/test time, costs, skilled resources – Provides up-front architectural framework and services needed commonly across spacecraft/real- time embedded command/control applications • Don’t have to “reinvent the wheel” every spacecraft for common functions – Allows ease of development and integration by supporting multiple OS’s and Platforms § In-house experiences with CFS software development – High software productivity achieved starting with solid architecture (~15+ SLOC/day) – Ease of application and hardware/software integration – Decreased verification needed – mature code and architecture – Test Readiness Level (TRL9) 2 – Excellent product line support from Goddard
CFS Project Use History – Non Exhaustive Johnson Space Center CFS Usage Timeline [CELLRANGE] [CELLRANGE] [CELLRANGE] [CELLRANGE] [CELLRANGE] Oct-09 Apr-10 Oct-10 Apr-11 Oct-11 Apr-12 Oct-12 Apr-13 Oct-13 Apr-14 Oct-14 Apr-15 [CELLRANGE] [CELLRANGE] [CELLRANGE] [CELLRANGE] [CELLRANGE] CFS Use in Some Current Spacecraft Goddard Missions: • Lunar Reconnaissance Orbiter (LRO) (2009) • Solar Dynamics Observatory (SDO) (2010) • Magnetospheric Multiscale Mission (MMS) (2014) • Global Precipitation Measurement (GPM) (2014) Ames Research Center Missions: • Lunar Atmosphere and Dust Environment Explorer (LADEE) (2013) Applied Physical Lab (APL) Missions: • Radiation Belt Storm Probes (RBSP) (Aug 2012) • Solar Probe Plus (SPP) (2018) 3
Core Flight Software (CFS) Architecture Overview Core Flight Software Framework- Notional CFS Application Software Architecture Architectural Layers Data To/From Vehicle CFDP Manager Telemetry Command File Scheduler Output Ingest Mass ¡ ¡Mission ¡Specific ¡ CFS Reusable Storage Device CFS ¡Apps ¡ ¡ ¡ Apps Data Storage Mission Specific cFE (core Flight Executive) Apps - Components Services API Checker Limit Operating System Abstraction Hardware Layer (OSAL) API Health & Specific Safety Device I/O Inter-task Message Router Manager (Software Bus – Publish/Subscribe) Apps - Components Platform Specific Package (PSP) Table Time Event Example CFS Reuse Apps Services Services Services Services Bus Mission Specific Apps Core Services Software Executive 2013 ¡-‑ ¡Lorraine ¡E. ¡P. ¡Williams, ¡Ph. ¡D ¡– ¡NASA/JSC/ER6 ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡4 ¡
CFS Supported Platforms (non-exhaustive) Pla2orm ¡ OS ¡ Project ¡ Status ¡/ ¡Notes ¡ Pla2orm ¡ OS ¡ Project ¡ Status ¡/ ¡Notes ¡ RAD750 ¡ vxWorks ¡6.4 ¡ LRO,RBSP, ¡ Project ¡tested. ¡ Aitech ¡S950 ¡ vxWorks ¡ Morpheus ¡ In ¡JSC ¡CM. ¡ GPM ¡ (PPC750FX) ¡ 6.7 ¡ IntegraSon ¡tested ¡on ¡real ¡Morpheus ¡ Vehicle ¡hardware. ¡ ¡Flown ¡on ¡Morpheus ¡ RAD750 ¡ RTEMS ¡4.10 ¡ ICESat-‑2/ Early ¡in ¡instrument ¡test ¡program ¡ test ¡vehicle. ¡ ATLAS ¡ RTD ¡pc386-‑ RTEMS ¡ ISS ¡ In ¡JSC ¡CM. ¡ Rad ¡Hard ¡Coldfire ¡ RTEMS ¡4.10 ¡ MMS ¡ Project ¡tested. ¡ ¡ IDAN, ¡PC104, ¡ 4.10 ¡ Downmass/ IntegraSon ¡tested ¡on ¡real ¡Micro ¡ ( 5208 ) ¡ ¡ PenSum ¡M ¡ Micro ¡ Capsule ¡hardware. ¡ LEON3 ¡ RTEMS ¡4.10 ¡ Solar ¡Probe ¡ In ¡Development ¡for ¡SPP ¡mission ¡ Capsule ¡ Plus ¡ Acro ¡Virtex ¡5 ¡ VxWorks ¡ AEMU ¡ In ¡development. ¡ MCP750 ¡PPC ¡ vxWorks ¡6.4 ¡ cFE/CFS ¡ Tested. ¡ 6.9 ¡ Project ¡ Used ¡as ¡baseline ¡CFS ¡development ¡pla2orm. ¡ Space ¡Micro ¡ VxWorks ¡ MMSEV, ¡ In ¡JSC ¡CM. ¡ PC ¡/ ¡x86 ¡ Linux ¡ n/a ¡ Not ¡formally ¡tested. ¡ ¡Used ¡by ¡JSC. ¡ Proton ¡P400k ¡ SMP ¡6.8 ¡ AAE ¡ In ¡development ¡for ¡MMSEV ¡FY13 ¡work. ¡ Coldfire ¡MCF5235 ¡ RTEMS ¡4.10 ¡ n/a ¡ Not ¡formally ¡tested. ¡ ¡ board ¡ Used ¡for ¡RTEMS ¡Development, ¡and ¡MMS ¡board. ¡ Maxwell ¡ VxWorks ¡ EAM, ¡ In ¡JSC ¡CM. ¡ ¡EAM ¡about ¡to ¡start ¡using. ¡ SCS750 ¡ 6.9 ¡ AAE ¡ LEON3 ¡– ¡generic ¡– RTEMS ¡4.10 ¡ n/a ¡ Not ¡tested. ¡ ¡Not ¡in ¡CFS ¡CM. ¡ ¡ RTEMS ¡ (simulator, ¡ Used ¡for ¡LEON3 ¡development. ¡ ¡ 4.10 ¡ mul^ple ¡COTS ¡ Can ¡be ¡used ¡on ¡LEON3 ¡Simulator. ¡ boards ¡) ¡ 787FCM ¡ Integrity ¡ AES ¡CFS ¡ In ¡development, ¡producing ¡ARINC653 ¡ ARINC ¡ cFE, ¡OSAL. ¡ Coldfire ¡Simulator ¡ RTEMS ¡4.10 ¡ n/a ¡ Not ¡formally ¡tested. ¡ ¡ (qemu ¡68k ¡) ¡ Used ¡for ¡OSAL ¡/ ¡cFE ¡development ¡ OrionSCP ¡ Integrity ¡ AES ¡CFS ¡ In ¡development, ¡producing ¡ARINC653 ¡ TILERA ¡ Linux ¡ Maestro ¡IRAD ¡ Not ¡formally ¡tested. ¡ ARINC ¡ cFE, ¡OSAL. ¡ (FY12) ¡ Compa^ble ¡with ¡Desktop ¡PC ¡linux ¡version. ¡ 750FCR ¡ VxWorks ¡ AES ¡CFS ¡ In ¡development, ¡tesSng ¡FTSS ¡SW ¡fault ¡ MCP750 ¡PPC ¡ vxWorks ¡6.x ¡ Memory ¡ Adds ¡memory ¡protec^on ¡to ¡standard ¡cFE. ¡ ARINC ¡6.8 ¡ containment ¡with ¡a ¡voSng ¡quad ¡ Protec^on ¡ Not ¡formally ¡tested. ¡ architecture. ¡ IRAD ¡(FY11) ¡ Not ¡integrated ¡with ¡cFE ¡repository. ¡ Trick ¡ Linux ¡ AES ¡CFS ¡ In ¡development, ¡for ¡mulS-‑project ¡use. ¡ PC ¡x86 ¡ Linux ¡ Mul^-‑Core ¡ Adds ¡mul^-‑core ¡CPU ¡capability ¡to ¡cFE. ¡ (simulaSon ¡ IRAD ¡(FY12) ¡ Not ¡formally ¡tested. ¡ Not ¡integrated ¡with ¡cFE ¡repository. ¡ environment) ¡ Leon3 ¡ ¡ PikeOS ¡ Virtualiza^on ¡ Adds ¡ability ¡to ¡run ¡in ¡par^^oned ¡OS. ¡ LEON3 ¡ VxWorks ¡ BFS ¡ In ¡JSC ¡CM. ¡ ¡BFS ¡prototype. ¡ IRAD ¡(FY12) ¡ Prototype. ¡ 6.7 ¡ Not ¡integrated ¡with ¡cFE ¡repository. ¡ AiTech ¡SP0 ¡ VxWorks ¡ RPM? ¡ In ¡JSC ¡CM. ¡ ¡RPM ¡performance ¡analysis. ¡ 6.7 ¡ Recently Developed largely in support of AES projects
Broad ¡Awareness/Use ¡of ¡the ¡CFS ¡ APL - Successfully used ARC- Using on LADEE GRC –Using on CPST, on RBSP. Proposing use (flight SW system on Suits on Solar Probe, DoD budget /schedule) programs. GSFC-Used Commercial - DOD Successfully on LRO, Moon Express • Potential for standardization though using on MMS, GPM, (Lunar X-Prize) Office of Director of National instruments. Plans Intelligence (ODNI) for NICER, several • 2012- met w/ Space Universal others. JPL – Evaluating MOdular Architecture (SUMO) team architecture for robotic MSFC- Mighty led by Office of Director for National missions and ESTO Eagle Lander, Intelligence (James Afarin (HQ)) missions, DTN prototyping for JSC-Used Successfully AES on Morpheus. Using on Habitats and Suits KSC-Evaluating (AES) – enhancing for for AES, sounding human rated software. rockets and UAV’s South Korea Aerospace Research Institute (KARI) - Lunar Exploration Research http://www.nasa.gov/mission_pages/lunarquest/robotic/12-085.html Team 6 ¡
Recommend
More recommend