tactical systems common operating environment (ts-coe)
DESCRIPTION
Tactical Systems Common Operating Environment (TS-COE). Team A1 Williamson, MacFarlane, Crabtree. Problem. Re-implementing Common Functions on multiple Projects with no requirements changes Application Code locked to O/S and Hardware - PowerPoint PPT PresentationTRANSCRIPT
SMU SM
Tactical Systems Tactical Systems Common Operating Common Operating Environment (TS-Environment (TS-
COE)COE)
Team A1Team A1
Williamson, Williamson, MacFarlane, CrabtreeMacFarlane, Crabtree
ProblemProblem
Re-implementing Common Functions on Re-implementing Common Functions on multiple Projects with no requirements multiple Projects with no requirements changeschanges
Application Code locked to O/S and Application Code locked to O/S and HardwareHardware
Difficult to test Software reliably before Difficult to test Software reliably before Target Hardware is readyTarget Hardware is ready
Requirements/AssumptionsRequirements/Assumptions
Maximum Use of COTS Processors and Maximum Use of COTS Processors and Operating SystemsOperating Systems
Handle High Bandwidth Sensors and DSPHandle High Bandwidth Sensors and DSPApplication DomainApplication Domain
– Static ThreadsStatic Threads– Static SchedulingStatic Scheduling– Simulation before HardwareSimulation before Hardware
TS-COETS-COE
Tactical Systems Common Operating Tactical Systems Common Operating Environment (TS-COE)Environment (TS-COE)– Language, O/S IndependentLanguage, O/S Independent– Product and a Design MethodologyProduct and a Design Methodology– Simple to ImplementSimple to Implement– Improves Embedded, Real-Time Software Improves Embedded, Real-Time Software
Productivity and ReliabilityProductivity and Reliability
TS-COE FacilitiesTS-COE Facilities
Facility DescriptionTask Management Creation, Delay and Destruction of
Tasks/ProcessesMail Named, Broadcast MessagingEvent Processing Task Blocking, Prioritized Event HandlingTimers High Resolution, Event driven TimersInstrumentation Application Data LoggingSemaphore/MutexSystem Time Timer or Sensor (e.g. Video Frame Time) Driven
Global System TimeExecution Trace Application Inserted Milestone LoggingException HandingImage and SensorManagement
Configurable, platform independent sensorextraction
Critical Sections andDelays
Critical sections and processor locking criticaldelays.
Reprogramming Bus independent processor reprogrammingNVM Management Non-volatile Memory Management with Error
Checking and Wear Leveling
From Board Vendor
MCCR
COE
Typical TS-COE Software Layers
Legacy API
Applications
COE Extensions
COE
Hardware
VxWorks/BSP/Drivers
Legacy WrapperDrivers
BoardSpecs
TS-COE Sub-LayersTS-COE Sub-Layers
API
Logic Layer
O/S and Communication Bindings
EndpointsEndpoints(implemented one or more per thread)(implemented one or more per thread)
Thread popsone mailbox ata time out ofendpoint andprocesses it
Registered mail goes inhere when sent by sendingthread(s) (FIFO)
Sending thread(s)Receiving thread(owns the pipe/endpoint)
Design MethodologyDesign Methodology
Decomposition into TasksDecomposition into TasksInter-task CommunicationInter-task Communication
– Sequence DiagramsSequence Diagrams
Task State Machine DesignTask State Machine Design– State ChartsState Charts
Coding to Thread TemplatesCoding to Thread TemplatesSimulationSimulationUniversal Test Driver (UTD)Universal Test Driver (UTD)
Application InterfacesApplication Interfaces(documented in sequence diagrams)(documented in sequence diagrams)
MissileGuidance FmControl
threads
Arm
GuidanceResults
Mailboxes(across VME andshared memory)
Sample State ChartSample State Chart
Sample UTD Input FilesSample UTD Input Files
outfile=server:/home/brad/no_nfov.instframecount=117860imagefile=server:/home/brad/bsruns/img/exbs117860.migfocuscount=0infile=server:/home/brad/bsruns/bs_dimming/bs11_27/wfov_dim/wfov_dim.in
abc00007 0abc00001 0abc0004c 1abc00017 0abc0002f 2abc00007 21561504abc00007 29557035abc00007 32178441
Other ApproachesOther Approaches
RT-COERT-COE– DAPRA ProjectDAPRA Project– Large Scale ComputingLarge Scale Computing
RT-CORBART-CORBA– DII COE Recommended for weapons system DII COE Recommended for weapons system
domaindomain– Client/Server Distributed ObjectClient/Server Distributed Object